首页 > 解决方案 > 用 .htaccess 替换部分 uri

问题描述

我想用 .htaccess 中的 mod_rewrite 替换 get 参数。我有网址www.domain.at/success?id=12345,需要替换"id""vid"->www.domain.at/success?vid=12345

此替换只能在“成功”页面/uri 上工作,而不能在网站的其他页面上工作。

我试过了

RewriteEngine On
RewriteRule ^(.*)success?id=([^0-9]*)$ /$1success?vid=$2 [R=301,L]

但这不适用于动态部分?

感谢帮助!马丁

标签: .htaccessmod-rewrite

解决方案


您必须将查询参数RewriteCond与请求 URI 分开匹配,如下所示:

RewriteCond %{QUERY_STRING} ^id=(.+)$ [NC]
RewriteRule ^success/?$ /$0?vid=%1 [R=301,L,NC]

推荐阅读