2011-08-03 37 views
1

所以我有一個荒謬的問題,託管公司似乎不能自己照顧。我有一個運行ISAPI Rewrite 3的Windows服務器上的網站,允許我爲wordpress使用.htaccess文件。但我注意到編寫一個不帶%{REQUEST_FILENAME}的.htaccess文件

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

語句不起作用。他們只是被忽略。這是一個配置問題?在平均時間,我的網站和運行這個小聰明,我從什麼地方

RewriteCond %{REQUEST_URI} (/[^.]*|\.(html?|php))$ [NC] 

的問題是,使用此行中我不能訪問是否存在實際的目錄偷走。防爆。/wp-admin /所以如果我想在管理區域進行更改,我必須啓用該限制IP的行才能進行更改,然後關閉該行。非常荒謬。

RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_URI} (/[^.]*|\.(html?|php))$ [NC] 
#disallow or allow just my IP address 
#RewriteCond %{REMOTE_HOST} !1.2.3.4 
RewriteRule .* /index.php [L] 

任何解決方案,以便我仍然可以訪問存在的目錄,而不使用%{REQUEST_FILENAME}?

+0

看來,REQUEST_FILENAME不是由IIS提供:http://msdn.microsoft.com/en-us/library/ms524602% 28v = vs.90%29.aspx –

+0

你使用什麼重寫軟件(ISAPI)? – LazyOne

+0

@LazyOne我使用ISAPI Rewrite 3 – BFTrick

回答

0

嗯..我有赫利V3的ISAPI_Rewrite在IIS 6上運行(與7 2年前就已啓用IIS)..和這些指令實際上做工精細

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

它可能不是那樣以及如果URL的一部分是虛擬文件夾/應用程序..但它適用於真正的文件和文件夾。嘗試這些替代(應該工作完全一樣,如果沒有虛擬的東西參與):

RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f 
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d