2016-08-19 41 views
-1

我所有的網站都在下面的圖形中產生:刪除網址的一部分,但要擴展

http://www.example.com/category/xyz/article---12345.html 

我想使用mod_rewrite刪除部分「--- 12345」,其中三個是弊總是存在的,但數字的金額爲3到7 的HTML變化建議立即進行刪除呆在那裏,這樣的URL看起來像:

http://www.example.com/category/xyz/article.html 

我怎樣才能做到這一點?

+0

數字的作業不能區分獨特的文章嗎? – feareoc

+0

當用戶在他們的地址欄中輸入「http:// www.example.com/category/xyz/article.html」時,您想要顯示哪個頁面? –

+0

如果您想要更清潔的網址,可以將「http:// www.example.com/category/xyz/article/xxxxx」重定向到http://www.example.com/category/xyz/article---xxxxx .html' – feareoc

回答

1

以下規則假定您請求不存在,將HTML文件將它們重定向到新的html文件名。它將爲任何.html文件執行此操作,而不僅僅是稱爲「文章」的操作。

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_URI} \.html$ 
RewriteCond %{REQUEST_URI} --- 
RewriteRule ^(.*)---(.*)$ "/$1.html" [R=301] 

注意事項: 如果原始.html文件存在除去前兩個的RewriteCond規則。 如果您不希望地址欄發生變化,請將[R = 301]替換爲[L]

0

文件:.htaccess

RewriteEngine On 
RewriteRule ^xyz/article---([0-9]{3,7}).html /xyz/article.html 

問題:你必須有一個.htaccess每個文件夾中,其中article---xxxxxx.html