2013-03-07 54 views
0

我知道這可能是一個經常被問到的問題,我尋找的答案,但不能拿出任何答案我的情況。我假設這是因爲我沒有找出正確的搜索條件,所以我很抱歉如果這是多餘的......謝謝你的時間!htaccess:重寫 - 但保持網站資源?

我使用.htaccess將我的URL重寫爲更加用戶友好的格式。這就是我想要做的全部事情,如果有一個更好的方法來做到這一點,我會很感激學習!

無論如何;我將localhost/room/2改寫爲index.php?p = room & id = 2。這就像一個魅力。

RewriteRule ^room/([0-9]*)$ /index.php?p=room&id=$1 [L] 

您可能已經可以告訴我的問題:我正在使用room/room_number創建一個虛擬文件夾。所以,當我 - 例如 - 包括使用IMG-標籤的圖片,那SRC屬性被改寫爲好,以適應工作目錄的服務器已經被認爲是在不是向

localhost/img/image.jpg 

的它要求

localhost/room/img/image.jpg 

這顯然不是正確的位置。所以我的問題是;如何將網址重寫爲友好且用戶友好的網頁同步重新將網頁資源重定向到其原始路徑?

回答

1

相對於根目錄使用的路徑通過與斜線前面加上路徑:

<img src="/img/image.jpg" /> 
+0

我的天啊,謝謝你!得到的愛 - 並在同一植物你的手掌牢牢地在自己的臉上 - 當修復這很簡單。 – ProudOne 2013-03-07 23:29:47

1

另一個(和相當標準)的解決這個問題是添加的RewriteCond,以便將規則從來都不是當請求的資源真正存在時應用。

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^room/([0-9]*)$ /index.php?p=room&id=$1 [L]