前提和目的啓動Apache的與客運/ mod_rails成功時的Fedora啓動
有這個線程約Passenger/mod_rails fails to initialize in Fedora 12 when starting Apache。底線,問題是由於權限,您可以通過調用
setenforce 0
運行
service httpd start
,並呼籲
setenforce 1
後
才能再回到之前避免這種情況。它工作的很酷,但我希望序列在Fedora重新啓動時自動運行。
問題
我看着/etc/init.d/httpd
,發現它只是重定向到etc/rc.d/init.d/functions
,關鍵呼叫
systemctl_redirect $0 $1
所以,我以爲只是圍繞這個電話與setenforce
電話像這樣會工作。
setenforce 0
systemctl_redirect $0 $1
setenforce 1
但它不起作用。它會發出這樣的新的錯誤(在httpd的錯誤日誌):
Cannot change the directory '/tmp/passenger.1.0.8581/generation-0/buffered_uploads' its UID to 48 and GID to 48: Operation not permitted (1)
當我省略了最後setenforce 1
,那麼它最後的作品!但顯然我想把它放回某個地方。
問題
我如何掛鉤這些setenforce 0
和setenforce 1
調用的httpd
引導順序?我覺得最正確的方法是寫我自己的/etc/init.d/httpd
腳本,不使用systemctl
,但我想避免這種情況,因爲它看起來像一條棘手的路徑......但如果我錯了,並且如果你可以建議簡單的方法寫我自己的etc/init.d/httpd
腳本,我也會很感激。
事情是,目前沒有好的用於Phusion Passenger的SELinux配置文件。我們(作者)對SELinux沒有很好的理解,我們可以找到的小文檔不是很有幫助。如果任何人都可以提供一個好的SELinux配置文件並願意維護它,那麼這將非常棒。在此之前,完全禁用SELinux不幸是最簡單的方法。 – Hongli 2013-08-26 09:58:27