2009-12-05 18 views
0

我正在構建一個symfony應用程序,它可以運行多個站點。類似於this article使用.htaccess基於域(一個symfony應用程序上的多個站點)修改資產路徑

到目前爲止,除了他使用一些.htaccess「巫術」以外,這麼好。爲了使圖像和CSS文件鏈接重寫,以便指向以當前域名命名的資產目錄。再次閱讀上面的文章,如果沒有意義。

以下是文章的行:

RewriteCond /home/ash/projects/carshop/trunk/web/perhost/%{HTTP_HOST}%{REQUEST_FILENAME} -f 
RewriteRule (.*) /perhost/%{HTTP_HOST}/$1 [L] 

這是適合我的Windows測試服務器在同一行:

RewriteCond C:/xampp/projects/listing/web/sites/%{HTTP_HOST}%{REQUEST_FILENAME} -f 
RewriteRule (.*) /sites/%{HTTP_HOST}/$1 [L] 

是不是有什麼毛病我的語法還是我不理解這個.htaccess代碼應該做什麼。我檢查了mod_rewrite。

我想要做的就是讓它不必查詢數據庫(檢索當前網站)以獲取文件的正確路徑。每個域都有自己的圖像,css,文件在它自己的目錄中。

這樣

  • 網頁/網站/ website1.com/{圖片,JS,CSS}
  • 網頁/網站/ website2.com/{圖片,JS,CSS}

如果您需要更多信息,請告知我。

謝謝!

+0

我沒有時間爲我道歉一個完整的答案。如果我正確地記得Cond通常是一個Web路徑,而不是文件路徑。 – 2009-12-05 01:12:55

回答

0

REQUEST_FILENAME已經是一個絕對的文件系統路徑:

REQUEST_FILENAME
完整的本地文件系統中的文件路徑或腳本匹配的請求。

但是你爲什麼不中的情況使用$1也作爲這也是要重定向到目標:

RewriteCond /home/ash/projects/carshop/trunk/web/perhost/%{HTTP_HOST}/$1 -f 
RewriteRule (.*) /perhost/%{HTTP_HOST}/$1 [L] 
相關問題