我有一个WordPress网站,并且在一页上嵌入了一个动态vimeo视频。我们使用2个url参数嵌入视频并设置页面标题。
我们想重写此url,以便它看起来是目录而不是参数
当前网址: / video?id = 264243188&title = Testing
所需的URL :/ video / 264243188 /测试
当前的.htaccess:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} /video [NC]
RewriteCond %{QUERY_STRING} id=(.*)&title=(.*)
RewriteRule (.*) /video/%1/%2? [R=301,NE,L]
#RewriteEngine On
#RewriteRule ^video/([^/]*)/([^/]*)$ /video?id=$1&title=$2 [L]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
答案 0 :(得分:1)
您可以具有以下重写规则
RewriteCond %{REQUEST_URI} /video [NC]
RewriteCond %{QUERY_STRING} id=(.*)&title=(.*)
RewriteRule (.*) /video/%1/%2? [R=301,NE,L]
相同的工作示例在.htaccess tester
它将http://example.com/video?id=264243188&title=Testing
重定向到http://example.com/video/264243188/Testing
如果要将路径转换为查询字符串,则可以使用以下重写规则
RewriteRule ^video/([^/]+)/?([^/]+)/? video?id=$1&title=$2 [R=301,NE,L]