2013-10-26 317 views
0

我被困在這個403問題上。我設置了虛擬主機的Apache在Ubuntu上,當我訪問該網站,則返回403Apache虛擬主機403

/etc/apache2/site-available/os.solesschong.com

<VirtualHost *> 
    DocumentRoot /root/mysoft/sns 
    ServerName oa.solesschong.com 
    ErrorLog ${APACHE_LOG_DIR}/oa.solesschong.com-error.log 
    CustomLog ${APACHE_LOG_DIR}/oa.solesschong.com-access.log combined 
<Directory /root/mysoft/sns> 
    Allow from all 
</Directory> 
</VirtualHost> 

# a2enable oa.solesschong.com

文件

root/mysoft/sns/index.php 

DNS

oa.solesschong.com A-record: [IP of my server] 

瀏覽器返回

Forbidden 

You don't have permission to access/on this server. 

Apache/2.2.22 (Ubuntu) Server at oa.solesschong.com Port 80 
+1

/root目錄中'所有用戶'的權限當然不是'/ var'和'/ var/www'中找到的權限。無論如何,使用'/ root'來存儲這樣的東西是一個非常糟糕的主意。 – regilero

+0

我看到有人說apache必須擁有父文件夾的權限。這是否意味着直接父文件夾或所有父文件夾?如果我解釋你的話,我認爲你的意思是後者。 – SolessChong

+0

對於父目錄上的所有用戶,您需要'x'權限。但你需要更多的是避免'/ root',而不是正確的地方。 – regilero

回答

1

檢查你的Apache的版本。如果是2.4,那麼你需要從

Allow from all 

改變alow配置

Require all granted 
+0

它實際上是2.2.22,如403消息所示 – SolessChong

2

是否Apache進程有權限訪問讀/root/mysoft/sns/index.php?