Apache 无法重新启动

Apache 无法重新启动

尝试使用以下命令从终端重新启动 apache:

 sudo service apache2 restart

执行该命令时,出现以下错误:

Job for apache2.service failed. See "systemctl status apache2.service" and "journalctl -xe" for details.

执行“systemctl status apache2.service”时我得到以下输出:

apache2.service - (null)
   Loaded: loaded (/etc/init.d/apache2)
   Active: failed (Result: exit-code) since Sat 2015-05-30 02:22:41 IST; 12s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 4866 ExecStart=/etc/init.d/apache2 start (code=exited, status=1/FAILURE)

阿帕奇error.log

AH00489: Apache/2.4.12 (Unix) configured -- resuming normal operations
AH00094: Command line: '/usr/local/apache2/bin/httpd'

答案1

文件中存在一些语法错误apache2.conf

在终端中输入:

cd /etc/apache2

然后:

apache2ctl configtest

apache2.conf它会告诉您需要纠正文件中的错误位置。

答案2

也许这有助于找到原因:

journalctl | tail

就我而言,这是配置文件中的一个错误:

AH00526: Syntax error on line 5 of /etc/apache2/sites-enabled/mydomain-wsf.lan.conf

答案3

该问题是由于一些配置文件被删除,您必须重新安装它。

重新安装APACHE2:

要替换已删除的配置文件而不清除包,您可以执行以下操作:

sudo apt-get -o DPkg::Options::="--force-confmiss" --reinstall install apache2

要完全删除 apache2 配置文件,您应该:

sudo apt-get purge apache2

然后您就可以按照通常的方式重新安装它:

sudo apt-get install apache2

需要清除以删除所有配置文件 - 如果您删除配置文件但仅删除包,则会记住这一点并且默认情况下不会重新安装丢失的配置文件。

然后重新安装 PHP5:

apt-get purge libapache2-mod-php5 php5 && \
apt-get install libapache2-mod-php5 php5

答案4

删除虚拟主机后,我遇到了同样的错误。问题在于与位于 的该主机关联的残留 SSL conf 文件/etc/apache2/sites-enabled。SSL 是通过 Let's Encrypt 进行的,因此我要删除的代码是:

sudo rm yourdomain.com-le-ssl.conf

相关内容