Linux下Apache服务器出现死锁的解决方案

死锁非常让人烦恼,“httpd dead but subsys locked”。这个问题困扰了很长时间,终于意外的解决了,之前查找了无数资料,测试了无数方案,都不管用,最后却是在无意间修改配置时候,发现,死锁解决了。真是意外的收获,这个方法,相信一般人也想不到,由于一般人出现出现死锁原因不一致,所以解决方案也不一致,可以都做尝试一下。下面,就总结可能的方案,最后一种是我出现的问题解决方案。

     1.删除锁,重启服务器
     依次执行以下指令:

    sudo rm -f /var/lock/subsys/httpd
    sudo service httpd restart

    2.杀死所有进程,重启服务器
    依次执行以下指令:

    killall -9 httpd
    sudo service httpd restart

    3.修改配置文件,重启服务器
    找到httpd.conf,不修改的话,默认路径是etc/httpd/conf/httpd.conf用vim指令打开:
    将:
    PidFile /var/run/httpd.pid
    改为:
    PIDFILE=/var/run/httpd.pid

    执行
     sudo service httpd restart

    4.手动删除锁文件,重启服务器
    删除httpd.lock文件和httpd.pid文件         
    执行
     sudo service httpd restart
    5.数据库异常
  rm -fr /var/lib/mysql/*
  rm /var/lock/subsys/mysql
  rm: remove regular empty file `/var/lock/subsys/mysqld'? yes
  shell> killall mysqld
  shell> service mysqld start 
  6.修改配置文件(我出现问题的解决方案)
   找到httpd.conf,不修改的话,默认路径是etc/httpd/conf/httpd.conf用vim指令打开:
   找到以下内容:

 <Directory "/var/www/cgi-bin">
     AllowOverride None
     Options None
     Require all granted
</Directory>

   在里面添加一句(我这里是做py,cgi的测试):

    AddHandler cgi-script .cgi .py .pl

   即变为:
<Directory "/var/www/cgi-bin">
     AllowOverride None
     AddHandler cgi-script .cgi .py .pl
     Options None
     Require all granted
</Directory>
除了以上方案,再解决不了,就卸载重装吧。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值