2017-02-23 180 views
1

我需要讓Apache以非root用戶身份運行,監聽端口8443,以便在CentOS 7.3系統上有一個用於內部安全掃描的新網站(位於localhost:8443)。我只理解apache的基礎知識(在Ubuntu上),並且我不是Web管理員,因此我不熟悉必須使用的許多選項/配置設置。如何使用非標準端口作爲非root用戶運行apache?

我有一個目錄(/ webcontent)與我的網站內容(這需要PHP),並可以在那裏主持各種必要的conf文件。但我通過獲取httpd.conf中正確設置爲Apache作爲本地用戶運行磕磕絆絆,推出了具有:

httpd -f /webcontent/conf/httpd.conf 

,並建立日誌寫入/ web內容/日誌(通過錯誤日誌參數),但它然後抱怨不必/運行/ httpd的寫訪問,並且因此實際上並未開始:

[星期四11年2月23日:59:51.289587 2017] [auth_digest:錯誤] [PID 25464] (13 )權限被拒絕:AH01762:無法在文件上創建共享內存段 /run/httpd/authdigest_shm.25464

我想這只是我可能需要運行的很多問題中的第一個,所以如果任何人都可以指出httpd.conf(或其他地方)所需的特定配置設置以使此場景生效,那麼將非常感激。或者有任何其他建議運行apache的非根實例進行測試。

回答

0

有點晚了,但我看到目前爲止還沒有答案。我自己也遇到了這個問題。我的解決方案如下。

使用DefaultRuntimeDir指令覆蓋默認的「/ run/httpd」目錄。這在httpd.conf中。例如:

DefaultRuntimeDir "/my/local/rundir" 

這將使阿帕奇打造「/my/local/rundir/authdigest_shm.1234」

出於某種原因,這不也覆蓋缺省pid文件目錄,因此將其設置與PidFile指令,如:

PidFile "/my/local/rundir/httpd.pid" 

你也可能想看看ServerRoot指令。