我是 Linux(CentOS)新手,一直在尝试设置此 Web 应用程序https://github.com/craigrodway/printmaster在 CentOS 上度过了过去的几个小时。
对于我这样的新手来说,作者的说明有点模糊:
- 在网络服务器上创建目录来存储文件(配置为虚拟主机或子目录)
- 将所有 Print Master 文件复制到刚刚创建的文件夹中
- 创建一个名为 session 的新目录,将文件解压到该目录下,并使其可写
- 在 MySQL 中创建新的用户名和数据库
- 将 printmaster.sql 文件导入到新数据库
- 编辑 inc/init.php 中的 $db 行以反映您的数据库详细信息发明您自己的安全性(.htaccess,集成 Windows 身份验证...)
我尝试按照 wiki 部分中的指南中的说明进行操作,但仍然无法使其工作:https://github.com/craigrodway/printmaster/wiki/Installation-on-Linux
以下是我所做事情的历史
- 按照以下说明安装/配置 Apache 服务器: http://dev.antoinesolutions.com/apache-server (在网络浏览器中访问 localhost 并看到 Apache 测试页面)
- 按照以下说明安装/配置 PHP: http://dev.antoinesolutions.com/php (在网络浏览器中访问 localhost/phpinfo,并且有 phpinfo 输出。所以它有效!)
- 安装/配置 MySQL
--- 文件 ---
[root@localhost ~]# cd /tmp
[root@localhost ~]# wget [url]
https://github.com/craigrodway/printmaster/tarball/master[/url] --no-check-certificate
[root@localhost ~]# tar zxvf master
[root@localhost ~]# mv craigrodway-printmaster-af9843d/* /root/Desktop/printmaster/
在 printmaster 目录中创建了“session”目录,并使其可写
[root@localhost ~]# mkdir session
[root@localhost ~]# chmod 755 session
- - 数据库 - -
mysql -u root -p
(输入root用户的密码)
mysql> CREATE USER 'printers'@'localhost' IDENTIFIED BY 'printersPASS';
Query OK, 0 rows affected (0.00 sec)
mysql> CREATE DATABASE printers;
Query OK, 1 row affected (0.00 sec)
mysql> GRANT ALL PRIVILEGES ON printers.* TO 'printers'@'localhost';
Query OK, 0 rows affected (0.00 sec)
mysql> quit;
--- 导入 SQL 文件 ---
根据说明导入 printmaster.sql
[root@localhost ~]# mysql -u root -p printers < printmaster.sql
打开 init.php 并编辑 $db 行
[root@localhost ~]# vi inc/init.php
将 $db 更改为:
$db = new fDatabase('mysql', 'printers', 'printers', 'printersPASS', 'localhost');
--- 现在我在 httpd 上设置了 VirtualHost --- 首先,我是否需要设置虚拟主机?
创建了文件 /etc/httpd/conf.d/testprintmaster.conf,内容如下:
<VirtualHost *:80>
DocumentRoot /root/Desktop/printmaster
ServerName testprintmaster
ServerAlias [url]www.testprintmaster.com[/url]
</VirtualHost>
重启 Apache
[root@localhost ~]# service httpd restart
- - 结果 - -
就是这样!但是当我在 Firefox 上访问 www.testprintmaster.com 时,Apache 会将其定向到搜索页面...WTF!?
我检查 VirtualHost 配置的语法
[root@localhost ~]# /usr/sbin/httpd -S
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
_default_:443 localhost.localdoman (/etc/httpd/conf.d/ssl.conf:81)
*:80 is a NameVirtualHost
default server testprintmaster (/etc/httpd/conf.d/testprintmaster.conf:2)
port 80 namevhost testprintmaster (/etc/httpd/conf.d/testprintmaster.conf:2)
Syntax OK
我做错了什么?有什么想法吗?
答案1
您为什么要访问 www.printmaster.com?听起来您正在本地配置服务器,因此您应该确保 testprintmaster 解析到您的本地主机(即ping testprintmaster
成功)。如果没有,您应该将127.0.0.1 testprintmaster
记录添加到 /etc/hosts,然后尝试通过以下方式访问它http://testprintmaster。