昨日一个客户反映WDCP后面面板中添加的网站无法打开,需要帮其检查原因。索取服务器登录权限和后台登录权限后,便开始了漫漫其修远的求索之路。
1. 首先检查端口监听情况,使用 netstat -tulnp 查看端口监听情况。结果发现httpd服务监听的是8080端口,而没有监听80端口。
2. 尝试手动启动httpd服务,启动失败,提示如下:
[root@localhost vhost]# /etc/init.d/httpd restart
Stopping httpd: [FAILED]
Starting httpd: Syntax error on line 10 of /www/wdlinux/httpd-2.2.24/conf/vhost/hzkoftest.com.conf:
Invalid command 'php_admin_value', perhaps misspelled or defined by a module not included in the server configuration
[FAILED]
3. 检查/www/wdlinux/apache/conf/ 下的httpd.conf 和 vhost中的配置文件,发现都监听的是80端口,且无其他异常。
4. 一开始由于怀疑是版本的问题,所以走了很多的弯路,卸载更换不同的版本,结果出现各种各样的问题或者不足,反而徒增了许多烦恼,唯一的好处就是熟悉了安装过程。
5. 在上一步的尝试无法圆满解决问题后,便重新安装回原来的版本,并仔细观察安装过程的提示信息。郁闷的发现了一个值得注意的问题:似乎没有提示php安装成功。
6. 再次回到第二步,重启httpd服务,根据提示信息找查看配置文件对应行为:
php_admin_value open_basedir /www/web/ftpuser:/tmp
由于
php没有安装成功,百度搜索了相关信息,说出现这种情况是因为没有完整安装lanmp环境,导致Apache/modules里没有libphp5.so,配置文件httpd.conf里也没有加载libphp5.so引起的。
7. 将
libphp5.so从文件管理器 wdlinux/wdapache/modules 里复制一个到文件管理器 wdlinux/httpd-2.2.24/modules 里,
或者直接登录服务器进行操作,如图:
8. 在文件管理器wdlinux/httpd-2.2.24/conf/httpd.conf里加上下列设置:
-
<IfModule prefork.c>
-
LoadModule php5_module modules/libphp5.so
-
</IfModule>
9. 启动http服务后,httpd即可监听到80端口,网站可以访问,同时也可以打开php网页。
[root@localhost modules]# /etc/init.d/httpd start
Starting httpd: [ OK ]
[root@localhost modules]# netstat -tulnp | grep :80
tcp 0 0 :::80 :::* LISTEN 1846/httpd
tcp 0 0 :::8080 :::* LISTEN 1832/httpd
总结:wdcp的后台默认监听8080端口,而网站web服务默认监听80端口,两个服务程序是不同的。可分别使用如下方法进行重启:
/www/wdlinux/init.d/wdapache restart 或者 service wdapache restart 重启wdcp后台服务,默认对应8080端口。
/www/wdlinux/init.d/httpd restart 或者 service httpd restart 重启网站web服务,默认对应80端口。
针对wdcp安装不完整的情形,就需要仔细观察记录,以便分析解决。
参考文章:
阅读(3948) | 评论(0) | 转发(0) |