什麼規則集做我需要做以下的重定向:
[1] http://www.xyzblog.com/foo/bar.php => htdocs/projects/xyzblog/foo/bar.php
[2] http://www.xyzblog.com/js/jquery-min.js => htdocs/js/jquery-min.js
[3] http://www.bigcommerce.ch/images/baz.png => htdocs/projects/bigcommerce/images/baz.png
[4] http://www.bigcommerce.ch/css/reset.css => htdocs/css/reset.css
在文獻[2]和[4]請求的文件確實存在於原始路徑中,因此不發生重定向。
背景:
我有使用Apache朋友的優秀XAMPP一個WAMP ENVO。我在多個項目爲不同的客戶,並建立了以下目錄結構:
htdocs
+ css
+ images
+ includes
+ js
+ projects
+ bigcommerce
+ xyzblog
...
當我開始一個新項目,我創建下的項目名稱相同的目錄中工作;此外,我在客戶端的主機名後命名項目。因此,如果我開始製作一個生產場地爲http://www的項目。 dreamvacation.com
我在projects目錄下添加一個dreamvacation
目錄。
最後我暫時,下面一行添加到我的hosts
文件中C:\WINDOWS\system32\drivers\etc
127.0.0.1 dreamvacation.com
那種方式dreamvacation.com所有請求將被短路到我的本地主機。
我仍然需要一個組件才能夠在本地主機上編碼,並期望它在上傳到生產服務器時的行爲方式相同。這是一個htaccess文件,用於檢查請求中的主機名,並重定向到具有相同名稱的目錄,而不是頂級域標識符(.com
,.net
等)。只有當請求的文件不存在時,重定向纔會發生。這最後一個條件是因爲我經常使用的文件在htdocs
下的目錄中 - 例如我只有一個jquery-min.js
在htdocs/js
和只有一個藍圖css在htdocs/css/blueprint/screen.css
。但是,每個項目也有一個js
,css
,...子目錄,但僅限於項目特定的文件。
這怎麼可能實現?
一般說...考慮使用`vhosts`。 http://httpd.apache.org/docs/2.0/vhosts/examples.html – thedom 2011-01-26 19:52:45