Linux Mint下Apache2重启失败:APACHE_PID_FILE未定义求助
解决Linux Mint下Apache2启动失败:APACHE_PID_FILE未定义的问题
最近在Linux Mint上重启Apache2服务时踩了个坑,服务直接启动失败,提示:
Job for apache2.service failed because the control process exited with error code. 请查看"systemctl status apache2.service"和"journalctl -xe"获取详细信息。
查了systemctl status apache2.service的输出,一眼看到关键错误:
apache2[20286]: ERROR: APACHE_PID_FILE needs to be defined in /etc/apache2/envvars
问题根源
简单来说就是Apache的环境变量配置文件/etc/apache2/envvars里丢了APACHE_PID_FILE的定义——Apache启动的时候需要知道把进程ID存在哪个文件里,现在找不到这个配置,自然就启动失败了。
一步步解决
打开环境变量配置文件
用nano编辑这个文件(需要sudo权限):sudo nano /etc/apache2/envvars添加上缺失的PID文件定义
在文件里加一行(如果本来就有但被注释掉了,去掉注释也行):export APACHE_PID_FILE=/var/run/apache2/apache2.pid这个路径是Mint(基于Ubuntu)下Apache的默认PID文件位置,别乱改,除非你自己自定义过路径。
保存退出
nano里按Ctrl+O确认保存,再按Ctrl+X退出编辑器。重新启动Apache
执行重启命令:sudo systemctl restart apache2确认服务正常
查一下状态,显示active (running)就没问题了:systemctl status apache2
备选方案:恢复默认配置
如果你的envvars不止丢了这一个配置,干脆直接从官方示例文件恢复(先备份当前文件以防万一):
sudo cp /etc/apache2/envvars /etc/apache2/envvars.bak sudo cp /usr/share/doc/apache2/examples/envvars /etc/apache2/envvars
然后再重启服务,基本能解决大部分配置缺失的问题。
内容的提问来源于stack exchange,提问作者小械褉谐械泄 袣褍谢懈泻
相关产品推荐
相关产品推荐

