我在网址中有3个参数:
如果第三个参数npage的值为1,我需要重定向到相对基本URL。
来自网址
\en\news\npage-1\
我想重定向到
\en\news\
我的htaccess代码是这样的:
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
# first parameter (lang)
RewriteRule ^([^/]+)/$ index.php?lang=$1 [L,QSA]
# second parameter (page)
RewriteRule ^([^/]+)/([^/]+)/$ index.php?lang=$1&page=$2 [L,QSA]
# third parameter (npage) with pagination
RewriteRule ^([^/]+)/([^/]+)/npage-(\d+)/$ index.php?lang=$1&page=$2&npage=$3 [L,QSA]
# if first page, redirect to relative base url
RewriteCond %{QUERY_STRING} (^|&)npage=1(&|$) [NC]
RewriteRule ^ %{REQUEST_URI}? [R=301,L]
答案 0 :(得分:2)
尝试:
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
# first parameter (lang)
RewriteRule ^([^/]+)/$ index.php?lang=$1 [L,QSA]
# second parameter (page)
RewriteRule ^([^/]+)/([^/]+)/$ index.php?lang=$1&page=$2 [L,QSA]
# third parameter (npage) with pagination
RewriteRule ^([^/]+)/([^/]+)/npage-(\d+)/$ index.php?lang=$1&page=$2&npage=$3 [QSA]
# if first page, redirect to relative base url
RewriteCond %{QUERY_STRING} (^|&)npage=1(&|$) [NC]
RewriteRule ^ %{REQUEST_URI}? [R=301,L]
没有[L]
标志