2014-06-16 130 views
0

希望通過從每臺機器上的單個Apache /網站轉移到每臺機器上的多個虛擬主機設置獲得一些指導。Apache遷移到虛擬主機

當前設置:從源代碼安裝軟件包的LAMP堆棧: Apache 2.4.2,php 5.4.3和mysql 5.1.63 對於當前的單個站點(site1.ie)設置,我有虛擬主機的詳細信息, DocumentRoot和Directory指令指向httpd.conf中當前站點的site1 documentroot。

要啓用虛擬主機,我已取消註釋Include conf/extra/httpd-vhosts.conf,並且已將虛擬主機站點配置詳細信息移入httpd-vhosts.conf。事情是這樣的:

<VirtualHost _default_:443> 
ServerName http://site1.ie 
DocumentRoot "/usr/local/apache2/htdocs/site1" 
ServerAlias site1.ie 
</VirtualHost> 

當我取消在httpd.conf文件並重新啓動httpd的,我得到一個403 Forbidden錯誤DocumentRoot的細節,當我嘗試加載site1.ie。

目錄指令中的httpd-vhosts.conf(從httpd.conf中移動):

<Directory "/usr/local/apache2/htdocs/site1"> 
    Options Indexes FollowSymLinks 
    AllowOverride AuthConfig 
    Require all granted 
</Directory> 

編輯:

中的httpd error_log裏給了這個錯誤:AH01630:客戶端通過服務器配置否認:在/ usr /本地/ Apache2的/ htdocs中/

這是網站數據的位置是由該目錄指令控制:

<Directory /> 
    AllowOverride none 
    Require all denied 
</Directory> 

據我所知這是默認拒絕訪問此文件夾,但允許通過他們自己的目錄指令訪問其子文件夾?

發生403問題的時刻是當我註釋掉主httpd.conf文件中的DocumentRoot並在virtualhost指令中定義DocumentRoot(在httpd.conf文件或httpd-vhosts.conf文件中)。

我暫時更改了Directory /指令(如上所示)以要求所有授予,這擺脫了403錯誤,但所有我presneted與默認apache'它工作'頁面。我仍然無法訪問爲site1定義的documentroot目錄。

有沒有人有任何指針我做錯了什麼?

+0

檢查日誌以查看實際請求的文件。這將幫助您確定根是否錯誤或者燙髮是否錯誤。 –

+0

httpd中的error_log出現此錯誤:AH01630:客戶端被服務器配置拒絕:/ usr/local/apache2/htdocs / – user3744081

回答

0

我想你會在this site上找到你的答案。

這是一個可能會導致您的問題的事項的清單。