2012-04-13 264 views
1

我想在我的系統中實現虛擬主機。Apache的虛擬主機

我已經使用了下面的代碼。

NameVirtualHost *:80 
<VirtualHost *:80> 
    ServerAdmin [email protected] 
    DocumentRoot "/Users/shanker/Documents/content_booking/" 
    ServerName content.boking 
    Alias /booking "/Users/shanker/Documents/content_booking/public/" 
</VirtualHost> 

我也有hosts文件更新

127.0.0.1 content.booking

但我收到以下錯誤:

--------------------------------------------------------- 
Access forbidden! 

You don't have permission to access the requested directory. There is either no index document or the directory is read-protected. 

If you think this is a server error, please contact the webmaster. 
Error 403 
--------------------------------------------------------- 

可有人請解決這個問題。

+1

您是否閱讀過錯誤信息?第二行非常清楚問題是什麼。 – 2012-04-13 18:51:55

+0

雅我讀了這一行,並檢查了文件權限。該文件夾具有完整的權限。 – user1306297 2012-04-13 18:54:09

+1

閱讀關於「無索引文檔」的其他部分 – 2012-04-13 18:54:32

回答

1

您的ServerName是一個「o」,而您的hosts文件條目是「oo」(兩個)。

修復該錯字後,它能正常工作嗎?

+0

雅只是預訂,我在conf文件中正確使用,但在這裏我錯誤地提到了。 – user1306297 2012-04-13 19:05:11

0

OS X的權限等設置了(在箱子外面)從/Users/shanker/Sites服務網絡文檔的話,如果它是一個權限相關的問題,你可能只是嘗試有移動你的代碼到/Users/shanker/Sites/content_booking/目錄和更新DocumentRoot指令以側面解決任何權限問題。

1

如果您沒有在目錄中包含索引[html | htm | php],則默認操作可能是列出該目錄中的所有文件或更常見的安全性,以引發此錯誤。

http://127.0.0.1/導致Apache查找索引[html | htm | php]文件,如果沒有其中一個,並且您的安全性不允許列出目錄(它不應該),則這是錯誤。

在適當的目錄下創建一個index.html文件,看看是否有幫助。

1

首先在Apache中檢查您的httpd.conf文件,並確保虛擬主機處於打開狀態。 (刪除'#'打開/取消註釋)。

#Virtual hosts 
Include conf/extra/httpd-vhosts.conf 

下次更新您的虛擬主機文件與一些Directory選項。

<VirtualHost *:80> 
ServerAdmin [email protected] 
DocumentRoot "/Users/shanker/Documents/content_booking/" 
ServerName content.boking 
<Directory "C:/Users/shanker/Documents/content_booking/"> 
    Options Indexes FollowSymLinks ExecCGI 
    AllowOverride All 
    Order allow,deny 
    Allow from all 
</Directory> 
Alias /booking "/Users/shanker/Documents/content_booking/public/" 

希望這有助於。