2011-10-16 118 views
0

我試圖讓以正斜槓(/)開頭的相對鏈接用mod_rewrite重寫來引用網站根目錄。使用mod_rewrite重寫網站根目錄

我的網站:

http://localhost/mysite/ 

,我有衆多成功案例,例如,在我的CSS目錄,格式類似於這樣:

background: url('/img/background.jpg'); 

我想使用mod_rewrite點說,在:

http://localhost/mysite/img/background.jpg 

但現在,它是點荷蘭國際集團到:

http://localhost/img/background.jpg 

我提前道歉,如果這是一個沒有腦子,但我是新來的mod_rewrite的,我至今沒有成功地讓這個工作!

回答

0

這不是一件好事。這是管道錄音應該固定在其核心的錯誤。

通過以這種方式重寫網址,您可能會冒險破壞localhost等其他網站的鏈接,這是一個長期的維護噩夢,不得不處理網站根目錄之外的網址。

請考慮在您的CSS中使用相對鏈接。 。

background: url('../img/background.jpg'); 

如果圖像是在哪裏你的CSS樣式表是在同級目錄

鏈接樣式表中總是相對於樣式表中的位置 - 而不是使用HTML文件它。這使得在樣式表中使用相對鏈接變得非常簡單。

+0

那麼,我繼承了一個相當大的項目,已經這樣設置,所以我只是想讓它在我的本地開發環境中工作。所有的網址引用,不只是在CSS中,都用/來格式化以指示網站的根目錄。所以我只需要想出一個函數mod_rewrite來讓我爲我工作,並引用localhost/mysite而不是localhost /。它可能只是管道錄音,但改變每個網址的參考時間太密集。 – skiindude22

+0

@skiin爲什麼不建立一個單獨的本地網站,然後用自己的網站根?可能是更好/更乾淨的方式 –

+0

我試過設置dev.mysite.com(編輯主機文件並在httpd.conf中創建虛擬主機),但無法讓它正常工作,所以,因爲mod_rewrite只會成爲一對代碼,即使這不是理想的解決方案,它肯定會幫助我走出去! – skiindude22