我有一個網頁,它可以在實時服務器上正常工作。但是,使用cms編輯器創建的文件(jpg,pdf等)的某些鏈接包含相對路徑。 當我在我的本地測試服務器上運行該頁面時,服務器將頁面從localhost的子文件夾中提取出來,因此文件的相對路徑是錯誤的,因爲它們在開始時缺少子文件夾。 html頁面加載正常。這只是其中的一些文件有錯誤的路徑,不會加載。從http://localhost/level1/htaccess重寫規則問題
文件
頁面加載正試圖從http://localhost/level2/加載和我得到的404。
他們應該從http://localhost/level1/level2/
所以我設置被加載重寫規則,以糾正路徑,但無論怎樣我都試過,我不能得到它的工作。我嘗試了各種標誌,包括[R,L],但沒有任何更改HTML中的URI。
目前我有:
RewriteRule ^/level2/(.*)$ /level1/level2/$1 [R]
有什麼建議?
感謝
在我的無知中我認爲重寫了engibe,因爲它在基本的apache conf文件中打開我的本地設置。但是,我發現,因爲我使用多個域的虛擬主機,所以我需要在每個虛擬域中使用「RewriteOptions inherit」。 – RobC
這是我不明白的東西。出於兩個原因:1.如果引擎未啓用某個虛擬域,那麼您應該得到一個錯誤。你沒有檢查你的錯誤日誌文件嗎? 2.如果您在本地使用虛擬主機,那麼爲什麼不同級別的模糊?只需定義一個虛擬主機,以反映您在生產環境中的情況! – arkascha
您指出的問題是通過cms編輯器文件上傳程序設置的領先/關於少數文件的問題。 我已經採取了主導斜線,所以路徑是相對的,並且我的本地設置一切正常。 – RobC