我的 apache 服务器停止工作,我不知道如何解决。我有两个 wordpress 和一个 redmine 在该服务器上运行。几个小时后它停止工作。我可以 ping 服务器,但当我尝试使用浏览器访问网络时它没有响应。如果我重新启动 apache(“service apache2 restart”)它就会再次正常工作。
我的Apache版本:
Server version: Apache/2.4.10 (Debian)
Server built: Aug 31 2015 00:01:48
Server's Module Magic Number: 20120211:37
Server loaded: APR 1.5.1, APR-UTIL 1.5.4
Compiled using: APR 1.5.1, APR-UTIL 1.5.4
Architecture: 32-bit
/var/log/apache2/acces.log 或 /var/log/apache2/error.log 上没有信息
Apache 正在运行许多进程,也许服务器内存不足。
当我运行“service apache2 status”时,我得到了这个:
● apache2.service - LSB: Apache2 web server
Loaded: loaded (/etc/init.d/apache2)
Active: active (running) since Thu 2016-04-28 06:05:10 UTC; 1h 51min ago
Process: 20345 ExecStop=/etc/init.d/apache2 stop (code=exited, status=0/SUCCESS)
Process: 21763 ExecReload=/etc/init.d/apache2 reload (code=exited, status=0/SUCCESS)
Process: 20371 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/apache2.service
├─20406 /usr/sbin/apache2 -k start
├─20428 /usr/sbin/apache2 -k start
├─20429 /usr/sbin/apache2 -k start
├─20430 /usr/sbin/apache2 -k start
├─20431 /usr/sbin/apache2 -k start
├─20432 /usr/sbin/apache2 -k start
├─20436 /usr/sbin/apache2 -k start
├─20437 /usr/sbin/apache2 -k start
├─20438 /usr/sbin/apache2 -k start
├─20439 /usr/sbin/apache2 -k start
├─20440 /usr/sbin/apache2 -k start
├─20441 /usr/sbin/apache2 -k start
├─20442 /usr/sbin/apache2 -k start
├─20451 /usr/sbin/apache2 -k start
├─20465 /usr/sbin/apache2 -k start
├─20466 /usr/sbin/apache2 -k start
├─20467 /usr/sbin/apache2 -k start
├─20471 /usr/sbin/apache2 -k start
├─20474 /usr/sbin/apache2 -k start
├─20476 /usr/sbin/apache2 -k start
├─20478 /usr/sbin/apache2 -k start
├─20482 /usr/sbin/apache2 -k start
├─20485 /usr/sbin/apache2 -k start
├─20486 /usr/sbin/apache2 -k start
├─20490 /usr/sbin/apache2 -k start
├─20498 /usr/sbin/apache2 -k start
├─20505 /usr/sbin/apache2 -k start
├─20506 /usr/sbin/apache2 -k start
├─20507 /usr/sbin/apache2 -k start
├─20520 /usr/sbin/apache2 -k start
├─20521 /usr/sbin/apache2 -k start
├─20527 /usr/sbin/apache2 -k start
├─20528 /usr/sbin/apache2 -k start
├─20530 /usr/sbin/apache2 -k start
├─20545 /usr/sbin/apache2 -k start
├─20558 /usr/sbin/apache2 -k start
├─20561 /usr/sbin/apache2 -k start
├─20566 /usr/sbin/apache2 -k start
├─20568 /usr/sbin/apache2 -k start
├─20569 /usr/sbin/apache2 -k start
├─20577 /usr/sbin/apache2 -k start
├─20592 /usr/sbin/apache2 -k start
├─20598 /usr/sbin/apache2 -k start
├─20600 /usr/sbin/apache2 -k start
├─20615 /usr/sbin/apache2 -k start
├─20618 /usr/sbin/apache2 -k start
├─20621 /usr/sbin/apache2 -k start
├─20623 /usr/sbin/apache2 -k start
├─20636 /usr/sbin/apache2 -k start
├─20638 /usr/sbin/apache2 -k start
├─20653 /usr/sbin/apache2 -k start
├─20655 /usr/sbin/apache2 -k start
├─20656 /usr/sbin/apache2 -k start
├─20674 /usr/sbin/apache2 -k start
├─20675 /usr/sbin/apache2 -k start
├─20679 /usr/sbin/apache2 -k start
├─20680 /usr/sbin/apache2 -k start
├─20725 /usr/sbin/apache2 -k start
├─20729 /usr/sbin/apache2 -k start
├─20731 /usr/sbin/apache2 -k start
├─20732 /usr/sbin/apache2 -k start
├─20756 /usr/sbin/apache2 -k start
├─20762 /usr/sbin/apache2 -k start
├─20763 /usr/sbin/apache2 -k start
├─20781 /usr/sbin/apache2 -k start
├─20785 /usr/sbin/apache2 -k start
├─20790 /usr/sbin/apache2 -k start
├─20792 /usr/sbin/apache2 -k start
├─20800 /usr/sbin/apache2 -k start
├─20809 /usr/sbin/apache2 -k start
├─20810 /usr/sbin/apache2 -k start
├─20811 /usr/sbin/apache2 -k start
├─20823 /usr/sbin/apache2 -k start
├─20834 /usr/sbin/apache2 -k start
├─20837 /usr/sbin/apache2 -k start
├─20838 /usr/sbin/apache2 -k start
├─20839 /usr/sbin/apache2 -k start
├─20846 /usr/sbin/apache2 -k start
├─20864 /usr/sbin/apache2 -k start
├─20866 /usr/sbin/apache2 -k start
├─20867 /usr/sbin/apache2 -k start
├─20872 /usr/sbin/apache2 -k start
├─20893 /usr/sbin/apache2 -k start
├─20894 /usr/sbin/apache2 -k start
├─20900 /usr/sbin/apache2 -k start
├─20911 /usr/sbin/apache2 -k start
├─20914 /usr/sbin/apache2 -k start
├─20915 /usr/sbin/apache2 -k start
├─20916 /usr/sbin/apache2 -k start
├─20918 /usr/sbin/apache2 -k start
├─20936 /usr/sbin/apache2 -k start
├─20942 /usr/sbin/apache2 -k start
├─20951 /usr/sbin/apache2 -k start
├─20954 /usr/sbin/apache2 -k start
├─20955 /usr/sbin/apache2 -k start
├─20957 /usr/sbin/apache2 -k start
├─20958 /usr/sbin/apache2 -k start
├─20961 /usr/sbin/apache2 -k start
├─20965 /usr/sbin/apache2 -k start
├─20968 /usr/sbin/apache2 -k start
├─20974 /usr/sbin/apache2 -k start
├─20977 /usr/sbin/apache2 -k start
├─20978 /usr/sbin/apache2 -k start
├─20991 /usr/sbin/apache2 -k start
├─20996 /usr/sbin/apache2 -k start
├─21002 /usr/sbin/apache2 -k start
├─21003 /usr/sbin/apache2 -k start
├─21006 /usr/sbin/apache2 -k start
├─21015 /usr/sbin/apache2 -k start
├─21021 /usr/sbin/apache2 -k start
├─21031 /usr/sbin/apache2 -k start
├─21045 /usr/sbin/apache2 -k start
├─21057 /usr/sbin/apache2 -k start
├─21063 /usr/sbin/apache2 -k start
├─21066 /usr/sbin/apache2 -k start
├─21067 /usr/sbin/apache2 -k start
├─21078 /usr/sbin/apache2 -k start
├─21079 /usr/sbin/apache2 -k start
├─21087 /usr/sbin/apache2 -k start
├─21090 /usr/sbin/apache2 -k start
├─21091 /usr/sbin/apache2 -k start
├─21120 /usr/sbin/apache2 -k start
├─21128 /usr/sbin/apache2 -k start
├─21129 /usr/sbin/apache2 -k start
├─21130 /usr/sbin/apache2 -k start
├─21138 /usr/sbin/apache2 -k start
├─21145 /usr/sbin/apache2 -k start
├─21147 /usr/sbin/apache2 -k start
├─21148 /usr/sbin/apache2 -k start
├─21149 /usr/sbin/apache2 -k start
├─21151 /usr/sbin/apache2 -k start
├─21154 /usr/sbin/apache2 -k start
├─21164 /usr/sbin/apache2 -k start
├─21165 /usr/sbin/apache2 -k start
├─21171 /usr/sbin/apache2 -k start
├─21176 /usr/sbin/apache2 -k start
├─21178 /usr/sbin/apache2 -k start
├─21790 PassengerWatchdog
├─21794 PassengerHelperAgent
├─21801 PassengerLoggingAgent
├─21902 /usr/sbin/apache2 -k start
├─21932 /usr/sbin/apache2 -k start
├─21986 /usr/sbin/apache2 -k start
├─22019 /usr/sbin/apache2 -k start
├─22030 /usr/sbin/apache2 -k start
├─22050 /usr/sbin/apache2 -k start
├─22071 /usr/sbin/apache2 -k start
├─22072 /usr/sbin/apache2 -k start
├─22085 /usr/sbin/apache2 -k start
├─22107 /usr/sbin/apache2 -k start
├─22126 /usr/sbin/apache2 -k start
├─22149 /usr/sbin/apache2 -k start
├─22331 /usr/sbin/apache2 -k start
└─22527 /usr/sbin/apache2 -k start
Apr 28 06:05:09 onyserver1 apache2[20371]: Starting web server: apache2AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 10.1.46.47. Set the 'ServerName' directive gl
obally to suppress this message
Apr 28 06:05:10 onyserver1 apache2[20371]: .
Apr 28 06:05:10 onyserver1 systemd[1]: Started LSB: Apache2 web server.
Apr 28 06:25:07 onyserver1 systemd[1]: Reloading LSB: Apache2 web server.
Apr 28 06:25:07 onyserver1 apache2[21763]: Reloading web server: apache2.
Apr 28 06:25:07 onyserver1 systemd[1]: Reloaded LSB: Apache2 web server.
我的Apache配置:
WordPress:
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName blog.xxx.com
DocumentRoot /var/www/xxx
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/xxx>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Redmine:
<VirtualHost *:80>
ServerName redmine.xxx.com
# this is the passenger config
RailsEnv production
SetEnv X_DEBIAN_SITEID "default"
PassengerDefaultUser www-data
Alias "/plugin_assets/" /var/cache/redmine/default/plugin_assets/
DocumentRoot /usr/share/redmine/public
<Directory "/usr/share/redmine/public">
Allow from all
Options -MultiViews
Require all granted
</Directory>
</VirtualHost>
有什么建议吗?
提前致谢。
答案1
Nginx 声称并且被发现在内存使用方面更高效。因此您可以考虑将 Apache 换成 Nginx。
我还推荐 Monit。这是一个监控工具,可让您轻松检查 Apache 是否仍在运行,以及内存是否已完全耗尽。然后,您可以设置规则,例如在 Apache 停机或内存不足时重新启动它。这样,当它停机时,它将自动重新启动,几乎没人会注意到这个问题。
如果你真的想找出原因,那么你必须从收集一些日志开始。你说它们现在是空的,所以检查它们是否已启用、可写等。
最后,为了减轻系统处理静态 WordPress 页面的负担,我建议您使用 WordFence Falcon 网络服务器缓存。这样,PHP 的工作量就会大大减少,MySQL 也不会被调用,因为它是从网络服务器缓存中获取服务的。为了进一步减轻资源负担,您可以考虑为图像和静态资产(如 CSS 和 JS 文件)使用 CDN。