2011-09-17 104 views
2

昨天,我有一些本地運行的網站沒有問題。今天,沒有打開,我有一個日誌充滿了這一點:Apache停止遵循符號鏈接

Symbolic link not allowed or link target not accessible: /var/www 

我不知道我做了什麼(我沒開/以任何方式改變我的httpd.conf文件),但顯然這是一件壞。我運行虛擬主機,根目錄位於~/Developer/www。爲了在具有不同主目錄的多個Mac上共享配置文件,我創建了一個符號鏈接,/var/www指向~/Developer/www

所有虛擬主機配置文件的指向他們DocumentRoot/var/www/project_directory和自己的根目錄下有FollowSymLinks選項:

<VirtualHost *:80> 
    ServerName localhost 
    ServerAlias localhost.local localhost.dev 
    DocumentRoot /var/www/_localhost 

    <Directory /var/www/_localhost> 
    Options FollowSymLinks Indexes 
    AllowOverride None 
    Order deny,allow 
    Allow from all 
    </Directory> 
</VirtualHost> 

我主要httpd.conf文件,同樣,有/啓用FollowSymLinks選項:

<Directory /> 
    Options FollowSymLinks 
    AllowOverride None 
    Order deny,allow 
    Deny from all 
</Directory> 

任何想法我可以做些什麼來阻止Apache瞭解符號鏈接,或者更好的是,我可以做些什麼來獲得它 回到正軌?

謝謝。

UPDATE:

我要補充的是所有的「堆棧」的目錄是所有用戶可執行文件,並認爲這是本機安裝Apache在OS X Lion中。

回答

5

我想我做了一個我不應該有的假設。我已經驗證了每個相關權限,但是明顯不重要的除外。 Apache在我的頂級主目錄上沒有執行權限。我檢查了一遍,重新檢查了一遍,然後三重檢查了一切,但從未改變目錄本身的任何內容,我只是沒有預料到它會成爲問題。

+1

這幫了我。謝謝。這並不明顯 –

+0

我有一個類似的問題。符號鏈接是由root用戶創建的,而不是虛擬主機用戶。所以Apache無法看到符號鏈接。更改符號鏈接的所有者的工作方式就像一個魅力 – KnF

相關問題