2012-07-16 83 views
0

我期待能夠採取的網址。縮短鏈接,但仍然解決

www.domain.com/dash/photo/site%20-%20desc%20location 

並將其變成(並且仍然解決)。

www.domain.com/dash/photo/site 

不知道這是否有可能與重寫?

回答

1

您正在尋找mod_rewriteHere是重寫網址的不錯指南。

在你的.htaccess試試這個:

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !%20-desc%20location 

RewriteRule ^/site$ /site%20-desc%20location [L] 

這是一個非常特殊的重寫規則,如果您有需要改變其他文件,你需要寫一個更復雜的正則表達式。

+0

唯一能解決問題的解決方案是301重定向。 mod_rewrite可以與第一個空間一起工作嗎? – mrlayance 2012-07-16 18:14:08

+0

mod_rewrite將採用請求的url(即頂部url欄中的url)並默默地重寫它(即不在頂部url欄中顯示更改),以便它與實際的文件/目錄相匹配。這裏的目標是,您輸入/路由到www.domain.com/dash/photo/site並讓mod_rewrite將該網址更改爲www.domain.com/dash/photo/site%20-%20desc%20location而無需外部重定向( 301重定向)。唯一一次外部重定向是,如果你在重寫過程之後用[R = 301]標誌明確地告訴它它 – 2012-07-16 18:25:10