2016-05-12 73 views
1

我正在運行一個帶有apache 2.4和php 7的debian服務器。* 每天有1 - 3次我的網站出現故障,我必須重新啓動apache才能重新啓動它。apache2每天不斷崩潰1-3次

我是相當新的Linux,所以我真的不知道如何調試Apache:/

任何意見強烈appriciated!

服務器統計:

RAM:32 GB的RAM

HD:2×256GB的ssh 600/600MB

2的CPU 6芯我不記得的CPU

阿帕奇的統計崩潰前的狀態:

● apache2.service - LSB: Apache2 web server 
    Loaded: loaded (/etc/init.d/apache2) 
    Active: active (running) since Thu 2016-05-12 16:31:45 CEST; 2s ago 
    Process: 1540 ExecStop=/etc/init.d/apache2 stop (code=exited, status=0/SUCCESS) 
    Process: 27533 ExecReload=/etc/init.d/apache2 reload (code=exited, status=0/SUCCESS) 
    Process: 1566 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCCESS) 
    CGroup: /system.slice/apache2.service 
      ├─1581 /usr/sbin/apache2 -k start 
      ├─1584 /usr/sbin/apache2 -k start 
      ├─1585 /usr/sbin/apache2 -k start 
      ├─1586 /usr/sbin/apache2 -k start 
      ├─1587 /usr/sbin/apache2 -k start 
      └─1588 /usr/sbin/apache2 -k start 

May 12 16:31:45 something.com apache2[1566]: Starting web server: apac... 
May 12 16:31:45 something.com systemd[1]: Started LSB: Apache2 web se.... 
Hint: Some lines were ellipsized, use -l to show in full. 

崩潰後的apache狀態:

apache2.service - LSB: Apache2 web server 
    Loaded: loaded (/etc/init.d/apache2) 
    Active: active (running) since Wed 2016-05-11 13:06:04 CEST; 1 day 3h ago 
    Process: 16209 ExecStop=/etc/init.d/apache2 stop (code=exited, status=0/SUCCESS) 
    Process: 27533 ExecReload=/etc/init.d/apache2 reload (code=exited, status=0/SUCCESS) 
    Process: 16234 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCCESS) 
    CGroup: /system.slice/apache2.service 
      ├─16249 /usr/sbin/apache2 -k start 
      ├─16268 /usr/sbin/apache2 -k start 
      ├─16290 /usr/sbin/apache2 -k start 
      ├─16299 /usr/sbin/apache2 -k start 
      ├─16382 /usr/sbin/apache2 -k start 
      ├─16385 /usr/sbin/apache2 -k start 
      ├─16388 /usr/sbin/apache2 -k start 
      ├─16437 /usr/sbin/apache2 -k start 
      ├─16513 /usr/sbin/apache2 -k start 
      ├─16660 /usr/sbin/apache2 -k start 
      ├─16930 /usr/sbin/apache2 -k start 
      ├─16934 /usr/sbin/apache2 -k start 
      ├─16946 /usr/sbin/apache2 -k start 
      ├─16976 /usr/sbin/apache2 -k start 
      ├─16983 /usr/sbin/apache2 -k start 
      ├─16989 /usr/sbin/apache2 -k start 
      ├─16991 /usr/sbin/apache2 -k start 
      ├─17171 /usr/sbin/apache2 -k start 
      ├─17190 /usr/sbin/apache2 -k start 
      ├─17270 /usr/sbin/apache2 -k start 
      ├─17319 /usr/sbin/apache2 -k start 
      ├─17320 /usr/sbin/apache2 -k start 
      ├─17377 /usr/sbin/apache2 -k start 
      ├─17383 /usr/sbin/apache2 -k start 
      ├─17387 /usr/sbin/apache2 -k start 
      ├─17407 /usr/sbin/apache2 -k start 
      ├─17412 /usr/sbin/apache2 -k start 
      ├─17722 /usr/sbin/apache2 -k start 
      ├─17750 /usr/sbin/apache2 -k start 
      ├─17753 /usr/sbin/apache2 -k start 
      ├─17756 /usr/sbin/apache2 -k start 
      ├─17757 /usr/sbin/apache2 -k start 
      ├─17836 /usr/sbin/apache2 -k start 
      ├─17858 /usr/sbin/apache2 -k start 
      ├─17873 /usr/sbin/apache2 -k start 
      ├─17883 /usr/sbin/apache2 -k start 
      ├─17885 /usr/sbin/apache2 -k start 
      ├─17937 /usr/sbin/apache2 -k start 
      ├─17938 /usr/sbin/apache2 -k start 
      ├─17945 /usr/sbin/apache2 -k start 
      ├─17949 /usr/sbin/apache2 -k start 
      ├─17953 /usr/sbin/apache2 -k start 
      ├─18006 /usr/sbin/apache2 -k start 
      ├─18015 /usr/sbin/apache2 -k start 
      ├─18080 /usr/sbin/apache2 -k start 
      ├─18092 /usr/sbin/apache2 -k start 
      ├─18097 /usr/sbin/apache2 -k start 
      ├─18154 /usr/sbin/apache2 -k start 
      ├─18223 /usr/sbin/apache2 -k start 
      ├─18224 /usr/sbin/apache2 -k start 
      ├─18226 /usr/sbin/apache2 -k start 
      ├─18239 /usr/sbin/apache2 -k start 
      ├─18342 /usr/sbin/apache2 -k start 
      ├─18347 /usr/sbin/apache2 -k start 
      ├─18348 /usr/sbin/apache2 -k start 
      ├─18353 /usr/sbin/apache2 -k start 
      ├─18364 /usr/sbin/apache2 -k start 
      ├─18399 /usr/sbin/apache2 -k start 
      ├─18403 /usr/sbin/apache2 -k start 
      ├─18404 /usr/sbin/apache2 -k start 
      ├─18419 /usr/sbin/apache2 -k start 
      ├─18451 /usr/sbin/apache2 -k start 
      ├─18526 /usr/sbin/apache2 -k start 
      ├─18531 /usr/sbin/apache2 -k start 
      ├─18583 /usr/sbin/apache2 -k start 
      ├─18603 /usr/sbin/apache2 -k start 
      ├─18628 /usr/sbin/apache2 -k start 
      ├─18647 /usr/sbin/apache2 -k start 
      ├─18697 /usr/sbin/apache2 -k start 
      ├─18699 /usr/sbin/apache2 -k start 
      ├─18706 /usr/sbin/apache2 -k start 
      ├─18714 /usr/sbin/apache2 -k start 
      ├─18731 /usr/sbin/apache2 -k start 
      ├─18732 /usr/sbin/apache2 -k start 
      ├─18736 /usr/sbin/apache2 -k start 
      ├─18737 /usr/sbin/apache2 -k start 
      ├─18754 /usr/sbin/apache2 -k start 
      ├─18791 /usr/sbin/apache2 -k start 
      ├─18804 /usr/sbin/apache2 -k start 
      ├─18811 /usr/sbin/apache2 -k start 
      ├─18812 /usr/sbin/apache2 -k start 
      ├─18818 /usr/sbin/apache2 -k start 
      ├─18819 /usr/sbin/apache2 -k start 
      ├─18822 /usr/sbin/apache2 -k start 
      ├─18832 /usr/sbin/apache2 -k start 
      ├─18844 /usr/sbin/apache2 -k start 
      ├─18845 /usr/sbin/apache2 -k start 
      ├─18846 /usr/sbin/apache2 -k start 
      ├─18852 /usr/sbin/apache2 -k start 
      ├─18856 /usr/sbin/apache2 -k start 
      ├─18919 /usr/sbin/apache2 -k start 
      ├─18927 /usr/sbin/apache2 -k start 
      ├─18934 /usr/sbin/apache2 -k start 
      ├─18940 /usr/sbin/apache2 -k start 
      ├─18956 /usr/sbin/apache2 -k start 
      ├─18962 /usr/sbin/apache2 -k start 
      ├─18967 /usr/sbin/apache2 -k start 
      ├─18968 /usr/sbin/apache2 -k start 
      ├─18973 /usr/sbin/apache2 -k start 
      ├─18977 /usr/sbin/apache2 -k start 
      ├─18983 /usr/sbin/apache2 -k start 
      ├─19022 /usr/sbin/apache2 -k start 
      ├─19076 /usr/sbin/apache2 -k start 
      ├─19083 /usr/sbin/apache2 -k start 
      ├─19095 /usr/sbin/apache2 -k start 
      ├─19096 /usr/sbin/apache2 -k start 
      ├─19107 /usr/sbin/apache2 -k start 
      ├─19114 /usr/sbin/apache2 -k start 
      ├─19116 /usr/sbin/apache2 -k start 
      ├─19125 /usr/sbin/apache2 -k start 
      ├─19126 /usr/sbin/apache2 -k start 
      ├─19128 /usr/sbin/apache2 -k start 
      ├─19130 /usr/sbin/apache2 -k start 
      ├─19131 /usr/sbin/apache2 -k start 
      ├─19139 /usr/sbin/apache2 -k start 
      ├─19141 /usr/sbin/apache2 -k start 
      ├─19143 /usr/sbin/apache2 -k start 
      ├─19154 /usr/sbin/apache2 -k start 
      ├─19158 /usr/sbin/apache2 -k start 
      ├─19161 /usr/sbin/apache2 -k start 
      ├─19166 /usr/sbin/apache2 -k start 
      ├─19167 /usr/sbin/apache2 -k start 
      ├─19168 /usr/sbin/apache2 -k start 
      ├─19169 /usr/sbin/apache2 -k start 
      ├─19171 /usr/sbin/apache2 -k start 
      ├─19203 /usr/sbin/apache2 -k start 
      ├─19204 /usr/sbin/apache2 -k start 
      ├─19220 /usr/sbin/apache2 -k start 
      ├─19222 /usr/sbin/apache2 -k start 
      ├─19223 /usr/sbin/apache2 -k start 
      ├─19225 /usr/sbin/apache2 -k start 
      ├─19226 /usr/sbin/apache2 -k start 
      ├─19227 /usr/sbin/apache2 -k start 
      ├─19228 /usr/sbin/apache2 -k start 
      ├─19232 /usr/sbin/apache2 -k start 
      ├─19235 /usr/sbin/apache2 -k start 
      ├─19236 /usr/sbin/apache2 -k start 
      ├─19237 /usr/sbin/apache2 -k start 
      ├─19238 /usr/sbin/apache2 -k start 
      ├─19241 /usr/sbin/apache2 -k start 
      ├─19243 /usr/sbin/apache2 -k start 
      ├─19249 /usr/sbin/apache2 -k start 
      ├─19252 /usr/sbin/apache2 -k start 
      ├─19253 /usr/sbin/apache2 -k start 
      ├─19255 /usr/sbin/apache2 -k start 
      ├─19256 /usr/sbin/apache2 -k start 
      ├─19268 /usr/sbin/apache2 -k start 
      ├─19270 /usr/sbin/apache2 -k start 
      ├─19276 /usr/sbin/apache2 -k start 
      ├─19281 /usr/sbin/apache2 -k start 
      └─19285 /usr/sbin/apache2 -k start 

May 11 13:06:04 something.com apache2[16234]: Starting web server: apa... 
May 11 13:06:04 something.com systemd[1]: Started LSB: Apache2 web se.... 
May 12 06:52:37 something.com systemd[1]: Reloading LSB: Apache2 web .... 
May 12 06:52:38 something.com apache2[27533]: Reloading web server: ap... 
May 12 06:52:38 something.com systemd[1]: Reloaded LSB: Apache2 web s.... 
Hint: Some lines were ellipsized, use -l to show in full. 

Apache2的錯誤日誌:

[Thu May 12 06:52:38.198334 2016] [ssl:warn] [pid 16249] AH01906: something.com:443:0 server certificate is a CA certificate (BasicConstraints: CA == TRUE !?) 
[Thu May 12 06:52:38.198457 2016] [mpm_prefork:notice] [pid 16249] AH00163: Apache/2.4.10 (Debian) OpenSSL/1.0.1k configured -- resuming normal operations 
[Thu May 12 06:52:38.198462 2016] [core:notice] [pid 16249] AH00094: Command line: '/usr/sbin/apache2' 
[Thu May 12 16:31:43.877771 2016] [mpm_prefork:notice] [pid 16249] AH00169: caught SIGTERM, shutting down 
[Thu May 12 16:31:44.905366 2016] [ssl:warn] [pid 1580] AH01906: something.com:443:0 server certificate is a CA certificate (BasicConstraints: CA == TRUE !?) 
[Thu May 12 16:31:44.925525 2016] [ssl:warn] [pid 1581] AH01906: something.com:443:0 server certificate is a CA certificate (BasicConstraints: CA == TRUE !?) 
[Thu May 12 16:31:44.926946 2016] [mpm_prefork:notice] [pid 1581] AH00163: Apache/2.4.10 (Debian) OpenSSL/1.0.1k configured -- resuming normal operations 
[Thu May 12 16:31:44.926959 2016] [core:notice] [pid 1581] AH00094: Command line: '/usr/sbin/apache2' 

站點配置:

<VirtualHost *:80> 
     ServerAdmin [email protected] 
     ServerName something.com 
     ServerAlias www.something.com 

     # Indexes + Directory Root. 
     DocumentRoot /var/www/sitename/public_html/ 

     <Directory /var/www/sitename/public_html/> 
       DirectoryIndex index.php 
       Options indexes FollowSymLinks 
       AllowOverride all 
       Require all granted 
     </Directory> 

     # Logfiles 
    ErrorLog /home/Glausten/website/sitename/logs/sitename_error_logs.log 
    CustomLog /home/Glausten/website/sitename/logs/sitename_access_logs.log common 
</VirtualHost> 

#<VirtualHost *:80> 
#  ServerAdmin [email protected] 
#  ServerName something.com 
#  DocumentRoot /var/www/sitename/public_html/ 
# 
#</VirtualHost> 
# 
# 
#<IfModule mod_ssl.c> 
#<VirtualHost *:443> 
# 
#  ServerAdmin [email protected] 
#  ServerName something.com 
#  DocumentRoot /var/www/sitename/public_html/ 
# 
     # SSL Engine Switch: 
     # Enable/Disable SSL for this virtual host. 
#  SSLEngine on 

     # A self-signed (snakeoil) certificate can be created by installing 
     # the ssl-cert package. See 
     # /usr/share/doc/apache2.2-common/README.Debian.gz for more info. 
     # If both key and certificate are stored in the same file, only the 
     # SSLCertificateFile directive is needed. 
#  SSLCertificateFile /etc/apache2/ssl/apache.crt 
#  SSLCertificateKeyFile /etc/apache2/ssl/apache.key 
#</VirtualHost> 

#</IfModule> 

有什麼事我可以張貼到幫助查找問題?

====================!=!=!=====================

我可能已經找到了問題

注意到在錯誤日誌中一個新的錯誤說:

server reached MaxRequestWorkers setting 

然後,我開始googleing與本網站受傷了:

http://cloudinservice.com/tune-apache-performance-using-mpm-prefork-module/ 那對我發生的事情給了我一些祕密mpm-prefork-module

然後我注意到MaxConnectionsPerChild其中設置爲0,這意味着如果我有一些PHP腳本有一點內存泄漏,將繼續增長和吃掉更多的內存不釋放任何隨着時間的推移這解釋了爲什麼服務器突然崩潰,我根據自己的資源修改了文件並重新啓動了apache。

我會在接下來的幾天看到它是如何發展的,如果它發生崩潰,我會返回併發布這個答案。

回答

1

看來你必須根據你的服務器配置來配置apache。 我對數字海洋和他的微小液滴也有同樣的問題。 最好的辦法是限制連鎖連接。但是如果你可以提供更多關於日誌的信息,機器配置你應該得到更好的答案