2013-11-24 150 views
3

我想要做的就是刪除我的一部分網址,我認爲這是最簡單的方法。.htaccess和使網站友好

這是我的網址目前的樣子:

subdomain.domain.com/site/blog/?action=viewArticle&url=$postTile 

我想刪除:

?action=viewArticle&url= 

所以,我最終的東西,如:

subdomain.domain.com/site/blog/$postTitle 

我已經嘗試下面,但我沒有喜悅:

RewriteEngine on 
RewriteRule ^subdomain.domain.com/site/bwc/(blog)/(.*)/$ /bwc/blog/?action=viewArticle&url=$2 

請幫助 - 我想我需要利用mod_rewrite的,但我不太知道如何。 我還需要一個解決方案,可以讓友好的URL鏈接 - 可以.htaccess/apache做到這一點嗎?

回答

3
RewriteRule ^site/bwc/blog/(.*?)/$ site/blog/?action=viewArticle&url=$1 

但請注意,在這種情況下,您的網址就會總是有一個/此結束工作

什麼重寫規則確實基本上是PHP的str_replace的URI。它將運行您在請求URI上提供的正則表達式,並將其替換爲您也提供的替換。爲了更好地理解你需要對正則表達式有好處,有人說這是一種語言。 (.*?)是正則表達式中的一個捕獲組。可以在替換字符串中以$\d的格式訪問捕獲組,其中\d將爲模式中捕獲組的連續編號。

龍的故事,如果你發送的正則表達式會抓住它,完成替換操作併發送至服務器相匹配的要求,而不是您輸入的地址短。

+0

它工作。你是一個天才。非常感謝! – Jack

+0

只是要清楚 - 它是如何工作的? 是否該行代碼告訴服務器後取無論發生什麼事「/博客/」,並把它放在博客/?行動= viewArticle和URL的末尾=然後帶回的結果呢? – Jack

+0

@傑克我編輯的答案,看看是否有幫助 –