2011-09-15 121 views
0

問題

現在,我是在Apache的一個完整的n00b,我肯定會用一些幫助,我目前的問題。我已經在3個不同系統上安裝了httpd rpm(所有研華計算機,1臺Box PC,1個高級TCA刀片,1個Compact PCI刀片,並且都安裝了RHEL6)。我已經在其他安裝上配置了Apache以前使用過的文件。當我發出命令無法連接到Apache服務器RHEL6

# service httpd restart 

一切順利,我得到這樣的輸出:

Stopping httpd: [ OK ] 
Starting httpd: httpd: apr_sockaddr_info_get() failed for <PC_Name> 
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName 
[ OK ] 

現在,當我嘗試連接到通過Apache機器,我得到的登錄畫面要求用戶名和密碼,就像你期望的那樣。但是,它無法登錄。當我看的error_log在/ var /日誌/的httpd /,它顯示了此錯誤消息:

[Thu Sep 15 14:24:40 2011] [error] [client 192.168.10.175] (13)Permission denied: Could not open password file: /etc/shadow 
[Thu Sep 15 14:24:40 2011] [error] [client 192.168.10.175] PAM: user 'root' - not authenticated: System error 

在我看來,這是無論是配置錯誤,或者它是與權限。但我似乎無法找出哪一個。另一個有趣的事實是,這隻適用於最後兩個安裝(高級TCA & Compact PCI),而不是第一個(Box PC),而所有3個安裝完全相同。

附加信息

我安裝它的方式是從百勝安裝的httpd,

# yum install httpd 

接着安裝mod_auth_pam,其由配置所需,

# yum install mod_auth_pam 

然後我配置了Apache與我從以前的安裝(基本上只是從標準的Apache安裝替換配置文件),然後我重新啓動Apache服務。

回答

0

我已經能夠通過設置SELinux來解決這個問題,以允許Apache請求。這是通過發出以下命令完成的:

semanage permissive -a http_t 

Semanage是來自policycoreutils-python包的實用程序。這應該與安裝介質一起提供。

1

對於這個錯誤 「apr_sockaddr_info_get()失敗」

您需要正確設置你的主機名。

主機名actual-non-expired-domain-name.com

不要忘記在你的httpd.conf和/ etc/hosts文件,以及設置的名稱。

+0

至於第二個錯誤,Apache用戶沒有權限讀取目錄和文件。 –

+0

即將嘗試。 – ThaMe90

+0

更改影子文件的權限並沒有幫助,更改組陰影所屬的也沒有幫助。這一切都會導致指定的錯誤消息...:< – ThaMe90