一段时间(2-3天)后,我们的网站无法从外部(非本地主机)访问,这是一个问题。
我们使用ApacheHTTP服务器2.4。服务器上有4个网站,主要使用端口443,使用自签名服务器证书。到目前为止,一切都很顺利。由于我使用alias指令和php添加了一个新网站,过了一会儿,所有网站都无法从远程访问。但是,我可以从服务器上的本地主机访问它们。
当网站不再可访问时,错误日志不会显示任何条目。我们现在只需重新启动apache http服务器就可以解决这个问题,一切都恢复正常。问题是,我们需要全天候的服务。
这是当前的httpd.conf:
Listen 443
SSLSessionCache "shmcb:${SRVROOT}/logs/ssl_scache(512000)"
SSLSessionCacheTimeout 300
<VirtualHost *:443>
DocumentRoot "D:/htdocs"
ServerName myserver.net:443
Alias /site2 "${WEBROOT}/site2"
Alias /site3 "${WEBROOT}/site3"
ScriptInterpreterSource Registry-Strict
Options +ExecCGI +FollowSymLinks -Indexes
DirectoryIndex index.cgi index.html index.php
SSLEngine on
SSLCertificateFile "${SRVROOT}/ssl/server.crt"
SSLCertificateKeyFile "${SRVROOT}/ssl/server.key"
</VirtualHost>
和
LoadModule php5_module "${PHPROOT}/php5apache2_4.dll"
<IfModule php5_module>
AddHandler application/x-httpd-php .php
PHPIniDir "${PHPROOT}"
</IfModule>
有人知道去哪里看吗?非常感谢。
更新
服务器运行了13天,但由于某些配置更改,我们不得不重新启动它。花了一天时间,问题又来了。我查看了服务器状态页,但找不到问题所在:
Server Version: Apache/2.4.16 (Win64) OpenSSL/1.0.1p PHP/5.6.12
Server MPM: WinNT
Server Built: Jul 13 2015 12:31:58
Distributed by: The Apache Haus
Compiled with: Visual Studio 2012
Current Time: Tuesday, 06-Oct-2015 11:38:01 Mitteleuropäische Sommerzeit
Restart Time: Sunday, 04-Oct-2015 23:40:51 Mitteleuropäische Sommerzeit
Parent Server Config. Generation: 1
Parent Server MPM Generation: 0
Server uptime: 1 day 11 hours 57 minutes 9 seconds
Server load: -1.00 -1.00 -1.00
Total accesses: 326772 - Total Traffic: 4.2 GB
2.52 requests/sec - 33.8 kB/second - 13.4 kB/request
1 requests currently being processed, 63 idle workers
最佳答案
AcceptFilter http无
AcceptFilter https无
当发生这种情况时,error.log应该显示“Asyncronous AcceptEx Failed”和“Network Name Non Available”之类的内容。
这两个指令是apache 2.2.x中win32disableacceptex的替代品。