2011-10-23 72 views
0

我在我的教職員工爲學生運行託管服務。我們使用suPHP運行PHP,爲了安全起見,我們需要將符號鏈接設置爲「SymLinksIfOwnerMatch」。需要Apache忽略.htaccess中的選項

這有一個非常不幸的錯誤,如果人們有「選項FollowSymLinks」或「選項無」htaccess他們將收到內部服務器錯誤。

這是一個巨大的問題,因爲大多數用於PHP的OSS軟件的分佈默認包含在他們的htaccess(Wordpress,Drupal,Joomla和許多其他)中,並且大多數htaccess-rules指南始終推薦使用「FollowSymLinks」它需要mod_rewrite - 它和SymLinksIfOwnerMatch一樣工作。

有沒有人有這個相同的問題,有誰知道如何征服它?我希望完全讓Apache忽略選項。我們的默認設置是完全足夠的。

回答

2

You want to setAllowOverride在您的主要配置文件中。

如果你想關閉所有使用.htaccess設置

AllowOverride None 

如果你只是想阻止學生使用Options那麼這應該這樣做:

AllowOVerride AuthConfig FileInfo Indexes Limit 
+0

感謝您的回答!那麼我的用例有點特別,因爲我想讓它對我們的用戶更透明。我們的選項是唯一需要的選項,所以我應該設置「AllowOverride None」。問題在於這會導致非常不具描述性的內部服務器錯誤,並且大多數腳本都會設置選項。因此,我希望Apache2能夠忽略它們,就好像它們不存在一樣。 – Flemming005