Apache-2.4

無法在 Cent OS 7 上為 Apache 狀態打開 PID 文件

  • February 25, 2020

在 Cent OS 7 上的 systemctl status httpd.service 上找到以下內容。Apache 2.4.41 已編譯並安裝。Cent OS 6 上沒有這樣的消息。

系統

$$ 1 $$:啟動後無法打開 PID 文件 /var/run/httpd.pid (還沒有?):沒有這樣的文件或目錄

即使狀態伺服器啟動和停止中的顯示工作正常。

這是服務文件:

cat /run/systemd/generator.late/httpd.service
# Automatically generated by systemd-sysv-generator

[Unit]
Documentation=man:systemd-sysv-generator(8) 
SourcePath=/etc/rc.d/init.d/httpd 
Description=LSB: start and stop Apache HTTP Server 
Before=shutdown.target 
After=remote-fs.target 
After=network-online.target 
After=nss-lookup.target 
After=distcache.service 
Wants=network-online.target 
Conflicts=shutdown.target

[Service]
Type=forking Restart=no
TimeoutSec=5min 
IgnoreSIGPIPE=no 
KillMode=process 
GuessMainPID=no 
RemainAfterExit=no 
PIDFile=/var/run/httpd.pid 
ExecStart=/etc/rc.d/init.d/httpd start 
ExecStop=/etc/rc.d/init.d/httpd stop 
ExecReload=/etc/rc.d/init.d/httpd reload


/etc/httpd/conf/extra/httpd-mpm.conf

<IfModule !mpm_netware_module>
   PidFile "/var/run/httpd.pid"
</IfModule>

任何的想法?

您看到此錯誤是因為您從原始碼編譯和安裝了 Apache,但尚未正確配置。

如果該文件/var/run/httpd.pid不存在,則需要更正它。在我的包含 Apache 版本的 CentOS 7 系統上,它位於/run/httpd/httpd.pid

您可以更改單元文件中的路徑。但是,如果您想執行比 CentOS 更新的版本,我建議您從軟體包儲存庫安裝 Apache,否則您將遇到許多類似這樣的問題,您必須進行故障排除。

當您自己編譯和安裝軟體時,您必須自己支持它。

引用自:https://serverfault.com/questions/1004483