Apache没有在linux mint中启动
好的,我对Apache还比较陌生:我试图创建一个本地网站(在sites available文件夹中创建.conf文件,在var/www/mysite/etc中创建文件夹),然后,我停止了Apache(使用systemctl stop apache2.service),但现在如果我尝试重新启动(systemctl restart apache2.service)它抛出以下错误: apache2.service的作业失败,因为控制进程以>错误代码退出。有关详细信息,请参阅“systemctl status apache2.service”和“journalctl-xe” 这是journalctl-xe的结果:Apache没有在linux mint中启动,apache,configuration,linux-mint,Apache,Configuration,Linux Mint,好的,我对Apache还比较陌生:我试图创建一个本地网站(在sites available文件夹中创建.conf文件,在var/www/mysite/etc中创建文件夹),然后,我停止了Apache(使用systemctl stop apache2.service),但现在如果我尝试重新启动(systemctl restart apache2.service)它抛出以下错误: apache2.service的作业失败,因为控制进程以>错误代码退出。有关详细信息,请参阅“systemctl sta
Mar 22 16:33:13 user-xxx apache2[10403]: * Starting Apache httpd web server apach
Mar 22 16:33:13 user-xxx apache2[10403]: *
Mar 22 16:33:13 user-xxx apache2[10403]: * The apache2 configtest failed.
Mar 22 16:33:13 user-xxx apache2[10403]: Output of config test was:
Mar 22 16:33:13 user-xxx apache2[10403]: apache2: Syntax error on line 140 of /etc/apache2/apache2.conf:
Mar 22 16:33:13 user-xxx apache2[10403]: Action 'configtest' failed.
以及/etc/apache2/apache2.conf中的第140行:
# Include module configuration:
IncludeOptional mods-enabled/*.load <--This one
IncludeOptional mods-enabled/*.conf
我得到:
libapache2-mod-php is already the newest version (1:7.2+60+ubuntu16.04.1+deb.sury.org+1).
我还尝试了什么:删除Apache并再次安装,安装lamp(sudo apt get install lamp server^)。
我已经从available.sites中删除了:mysite.conf
似乎没有什么能让它工作,我一直得到“apache2.service失败的作业”。好的,有点愚蠢的错误,我运行了apachectl configtest以获得更详细的错误,我得到:
apache2: Syntax error on line 140 of /etc/apache2/apache2.conf: Syntax
error on line 3 of /etc/apache2/mods-enabled/php7.0.load: Cannot load
/usr/lib/apache2/modules/libphp7.0.so into server:
/usr/lib/apache2/modules/libphp7.0.so: cannot open shared object file:
No such file or directory
Action 'configtest' failed.
The Apache error log may have more information.
因此,我检查了/etc/apache2/mods enabled/php7.0.load,在第3行它有:
LoadModule php7_module /usr/lib/apache2/modules/libphp7.0.so
但是在我的/usr/lib/apache2/modules文件夹中,我有一个更新的模块:
libphp7.2.so
因此,在/etc/apache2/mods enabled/php7.0.load中,我将其更改为:
LoadModule php7_module /usr/lib/apache2/modules/libphp7.2.so
然后重启apache,它就像一个魔咒一样工作
注意:我不知道这是否是正确的方法,但它正在工作。在我的例子中,升级到Ubuntu 20.04 LTS时失败了。模块libphp7.2.so而不是libphp7.4.so被加载到conf文件中,Melesio Marquez的解决方案成功了 在Ubuntu 20.04上也有同样的问题:
Syntax error on line 146 of /etc/apache2/apache2.conf:
Syntax error on line 3 of /etc/apache2/mods-enabled/php7.3.load:
Cannot load /usr/lib/apache2/modules/libphp7.3.so into server: /usr/lib/apache2/modules/libphp7.3.so:
cannot open shared object file: No such file or directory
更新了/etc/apache2/mods enabled/php7.3.load以指向libphp7.4.so:
#LoadModule php7_module /usr/lib/apache2/modules/libphp7.3.so
LoadModule php7_module /usr/lib/apache2/modules/libphp7.4.so
/etc/apache2/mods enabled/中的文件是指向/etc/apache2/mods的符号链接/* 所以只需删除它们并创建新的。要在/usr/bin/bar处创建引用原始文件/opt/foo的符号链接,请使用:ln-s/opt/foo/usr/bin/bar 修理
cd /etc/apache2/mods-enabled/
rm php7.*
sudo ln -s /etc/apache2/mods-available/php7.4.load php7.4.load
sudo ln -s /etc/apache2/mods-available/php7.4.conf php7.4.conf
确保文件存在,并删除旧链接。编辑符号链接将导致将来的升级问题。在ubuntu更新到20.04之后,我将PHP更改为7.4
sudo a2dismod php7.3
sudo a2enmod php7.4
sudo apachectl configtest
sudo systemctl restart apache2
您可以从这里查看您的PHP版本->
php -v
然后编写这个命令
sudo a2dismod php7.3
您应该看到模块php7.3
已禁用。
要激活新配置,您需要运行:
systemctl restart apache2
如果你想确定的话,检查一下你的谈话
apache2ctl configtest
您应该看到(语法正常)
最后,重新启动apache服务器(sudo systemctl restart apache2
)我遇到了错误:
/etc/apache2/apache2.conf的第146行出现语法错误:/etc的第1行出现语法错误/
从Ubuntu 18.04升级到20.04后(PHP7.3到PHP7.4)
我通过跑步解决了这个问题
sudo apt install libapache2-mod-php7.4
在我的例子中,我只找到了
libphp7.3。所以
。解决这个问题的正确方法是下面Audrius的解决方案。嗨@eugho,欢迎来到Stackoverflow!很高兴你愿意贡献自己的知识并与他人分享。请注意:在回答之前,请仔细阅读问题。你会注意到原始海报上有一个与你在回答中描述的完全不同的错误。您的错误是“没有这样的文件或目录”,而他们的错误是“在/etc/apache2/apache2.conf的第140行出现语法错误”。(这里不是想做一个傻瓜,只是想帮助你提高。)嗨@Stefan,请看海报自己给出的答案。他确实添加了与我提供的错误匹配的其他错误日志。您好@eugho,对不起,Stackoverflows review UI只要求我查看您的答案,所以我没有看到任何其他内容。:)在任何情况下,我都会要求你熟悉好答案的发布指南:--你认为你的答案属于哪一类?:)--注意安全!非常感谢你。我在ubuntu 20.04更新后遇到了这个问题。
sudo apt install libapache2-mod-php7.4