2012-01-13 102 views
0

很抱歉,如果這是一個非常愚蠢的問題 - 我找不到任何地方的答案...mod_rewrite的多個假子目錄

我存儲在一個名爲「開發」的子目錄我的測試文件,並使用以下重寫規則,以便請求/dev/VAR1/VAR2會帶我去/index.php?page=VAR1/VAR2,並要求/dev/VAR1/會帶我去/index.php?page=VAR1 (VAR1和VAR2是變量,以及文件夾/子目錄不會真的存在)

RewriteBase /dev 
RewriteRule ^([A-Za-z/\-]+)/$ index.php?page=$1 

這是做得很好 - 我的index.php獲得了正確的變量。問題是服務器或頁面(或者我不明白什麼...)認爲我是實際上在VAR1的不存在的文件夾(或子目錄),所以我所有的親戚(如果這是正確的基本上,服務器認爲它實際上是在「假」的文件夾 - 字)的圖像和鏈接,CSS和腳本等

<link rel="stylesheet" type="text/css" href="./sitefiles/mystyles.css" /> 

所有的工作,如果他們/dev/VAR1/sitefiles/mystyles.css地址。

有沒有一種方法可以繼續使用這些相對地址與我的mod_rewrite,還是我必須使用完整路徑的'絕對'地址?

感謝您的幫助!

+0

請參閱http://stackoverflow.com/a/1426302/53114 – Gumbo 2012-01-13 12:36:08

回答

0

我們使用與我們的配置相同的東西並將假別名重寫爲index.php?something = $ 1我們必須將我們的CSS文件放入DocumentRoot的/ styles /中,並且不要使用相對./路徑使用像href =「/ sitefiles/mystyles.css」這樣的絕對路徑,它應該可以正常工作。

+0

非常感謝! :) – user1039769 2012-01-13 12:43:49

+0

你有一個好:) – 2012-01-13 12:44:46