0
我有一個新的網站,需要301箇舊網頁,也有一些路徑重寫規則和301結尾沒有斜槓
新的網站產品頁面例如URL http://www.mywebsite.com/en/section/nice-url-name_123.html 此網址添加個性化網址我需要抓住的部分,名稱和ID
這是我的原則
RewriteRule ^en/([^_]+)/([^_]+)_([0-9]+).html /en/$1/detail.php?name=$2&id=$3 [L]
這工作得很好
在以前版本的網站,它們用這種URL格式
http://www.mywebsite.com/en/section/nice-url-name
我不能找到一個辦法攔截此URL,並重定向到我的新地址,身份證丟失,可以是0
所以它應該成爲 http://www.mywebsite.com/en/section/nice-url-name_0.html
,因爲我便無法找到一種方法,我嘗試URL添加trailling斜線
RewriteCond %{REQUEST_URI} !\.(php|html?|jpg|png|gif|ttf|ttf)$
RewriteRule ^(.*[^/])$ /$1/ [L,R=301]
,然後試圖通過部分
RewriteRule ^en/section1/([^_]+)/ /it/301.php?redirectd=section1&name=$1 [L]
趕上他們節我無法找到任何其他方式沒有無限循環301結束 但這種方式我需要排除我所有的擴展否則Apache會加斜線在圖像,字體,PDF格式的末等
爲什麼'([^ _] +)'每個ERE? '([^ /] +)'對於該部分更合理嗎? – arkascha
爲什麼你不能匹配'/ en/section/nice-url-name'?看起來很直截了當,我不需要重寫。 – arkascha
你能舉個例子嗎? – al404IT