Ver*_*era 3 .htaccess mod-rewrite
我怎么能用改写来改变:
/?标签= FOO
至:
/标签/富
我试过了:
RewriteCond %{QUERY_STRING} ^tag=(.+)$
RewriteRule ^(.*)$ http://www.example.com/tag/$1 [L]
Run Code Online (Sandbox Code Playgroud)
但它没有用.
请尝试以下方法:
RewriteCond %{QUERY_STRING} ^tag=(.+)$
RewriteRule ^(.*)$ http://www.example.com/tag/%1 [L]
Run Code Online (Sandbox Code Playgroud)
通常,重写用于实现相反的效果.你确定你真的不想做以下事吗?
RewriteRule ^tag/(.+)$ index.php?tag=$1 [L]
Run Code Online (Sandbox Code Playgroud)
为了避免递归,您应该检查请求行,因为查询字符串%{QUERY_STRING}可能已被其他规则更改:
RewriteCond %{THE_REQUEST} ^GET\ /\?(([^&\s]*&)*)tag=([^&\s]+)&?([^\s]*)
RewriteRule ^(.*)$ /tag/%3?%1%4 [L,R=301]
Run Code Online (Sandbox Code Playgroud)
然后,您可以在内部重写该请求而不会发生冲突:
RewriteRule ^tag/(.*) index.php?tag=$1 [L]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3126 次 |
| 最近记录: |