2011-09-07 123 views
1

我正在嘗試關注Paul Irish的示例,該示例說明如何在/publish內部生成我的網站的縮小版本。我已成功集成了自動化構建過程,但無法使.htaccess文件指向正確的文件夾。Htaccess重寫條件問題

我的目標:

當活的服務器上所有正常的網站流量重定向到/publish文件夾中使用「建」站點。但是當在開發服務器上使用/正常根文件夾中的開發文件時。

我的問題:

我想htaccess的重寫從根到/publish目錄請求。由於在//publish目錄中將使用相同的htaccess,我需要一個重寫條件來阻止它將/publish目錄中的請求重寫爲/publish/publish/my-page。我有這個目前:

RewriteCond %{SCRIPT_FILENAME} !^/publish/.+ 
RewriteRule ^(.*)$ publish/$1 [L] 

上述條件會查找沒有script_filename開始/publish請求。如果是這樣,它應該在前面用publish/來重寫請求。

但是,這是行不通的。有沒有人有任何想法它有什麼問題?我可以使用不同的服務器變量來確定請求是否在/publish目錄中。

回答

2

您應該使用%{REQUEST_URI},而不是因爲它是將具有相對於網站的根路徑,而不是物理文件名,如正確的變量其他。

RewriteCond %{REQUEST_URI} !^/publish/ 
RewriteRule ^(.*)$ publish/$1 [L] 
+0

現貨!謝謝。 – Kit