[英].htaccess 301 redirect problem
我嘗試重定向網址,如:
example.com/video/1640/video-name
至
example.com/video/1640/video-name/
我嘗試過:
RewriteRule ^video/([^/]*)/([^/]*)/$ video.php?id=$1&title=$2 [L]
RewriteRule ^video/([^/]*)/([^/]*)$ /video/([^/]*)/([^/]*)/ [R=301,L]
但它不起作用
我目前的htaccess文件只有第一行:
RewriteRule ^video/([^/]*)/([^/]*)/$ video.php?id=$1&title=$2 [L]
和視頻只加載
example.com/video/1640/video-name/
網址類型
我想重定向非反斜杠網址類型
example.com/video/1640/video-name
到正確的(帶反斜杠的那個)
我怎樣才能做到這一點?
你的第二個規則應該是RewriteRule ^video/([^/]*)/([^/]*)$ /video/$1/$2/ [R=301,L]
或者你可以完全放棄重定向,只需說RewriteRule ^video/([^/]*)/([^/]*)/?$ video.php?id=$1&title=$2 [L]
這將允許兩者查看您的視頻。
更新 FallingBullets是正確的(請參閱此答案的評論),他的答案更好地解決了OP的問題,所以請忽略這個答案(我將其留作參考)。
也許你只需要在你的模式前加一個/?
? E. g。
RewriteRule ^/?video/([^/]*)/([^/]*)/$ video.php?id=$1&title=$2 [L]
RewriteRule ^/?video/([^/]*)/([^/]*)$ /video/([^/]*)/([^/]*)/ [R=301,L]
# ^ these ones
代替
RewriteRule ^video/([^/]*)/([^/]*)/$ video.php?id=$1&title=$2 [L]
RewriteRule ^video/([^/]*)/([^/]*)$ /video/([^/]*)/([^/]*)/ [R=301,L]
因為您將模式錨定在路徑的開頭(使用^
)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.