安装MapServer 6.2.0后,Apache会自动失败

这个问题应该被标记为closures

我最近在CentOS 6.3机器上编译MapServer 6.2 ,使用

./configure --with-ogr=/usr/bin/gdal-config --with-gdal=/usr/bin/gdal-config --with-proj=/usr --with-geos=/usr/bin/geos-config --with-postgis=/usr/bin/pg_config --with-php=/usr/include/php --with-wfs --with-wfsclient --with-wmsclient --enable-debug --with-threads --with-wcs --with-sos --with-gd --with-freetype=/usr/bin --with-jpeg --with-cairo --with-curl

如果这是有利的话,无论如何。

所以在那之后,Apache / 2.2.15默默无法重启,也就是说,当apachectl graceful ,它说“httpd没有运行,试图启动”。 在Apache error_log, /var/log/messages 没有什么值得关注的东西,它很奇怪,因为到目前为止它一直工作。

重新启动机器多次没有解决问题。 我做了一些其他的事情:

 [root@R12X0210 cgi-bin]# service httpd status httpd is stopped [root@R12X0210 cgi-bin]# ps aux|grep httpd root 1846 0.0 0.0 103236 864 pts/0 S+ 12:11 0:00 grep httpd 

我怀疑这可能与由MapServer更改/添加的php模块有关,但我不知道…我甚至不知道如何正确debugging这个。

编辑 :好的, /var/log/httpd/error_log不一定是空的,而是在做/sbin/service/httpd start之后显示那两个东西

 [Wed Dec 19 17:33:24 2012] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec) [Wed Dec 19 17:33:24 2012] [error] Server should be SSL-aware but has no certificate configured [Hint: SSLCertificateFile] ((null):0) 

SSL错误是否导致启动机制的终止? 事情是我们有一个未签名的证书运行,即我们正在testinghttps访问,但还没有在生产模式。 在Apache停止工作之前,Apache的SSLconfiguration绝对没有改变。

编辑2:在此期间,我重新安装httpd与yum reinstall httpd ,这也没有解决问题。

如果PostgreSQL在同一台计算机上运行,​​请确保它正在侦听0.0.0.0127.0.0.1 ,或在端口5432上侦听。 要检查这个,下面的命令应该返回一些东西:

 sudo netstat -tlnp|egrep ':5432' 

如果PostgreSQL在另一台机器上运行,请检查hosts文件是否正确configuration,并确保在PHP应用程序的PostgreSQLconfiguration中使用了正确的主机