apache - RewriteCond 从 Query_String 中获取数组参数并转换为路径,同时保留其余参数
问题描述
如何允许少数参数继续被重定向,而一个参数是一个要转换为 url 路径中的字符串的数组
例如: param1[]=apple&price=1,10 应该变成 /apple/?price=1,10
Orginal url: example.com/path1/?param1[]=apple¶m2=1,100
Expected redirection: example.com/path1/apple/?param2=1,100
Orginal url: example.com/path1/path2/?param[]=apple¶m2=1,100¶m3=yes
Expected redirect: example.com/path1/path2/apple/?param2=1,100¶m3=yes
解决方案
您可以使用此重定向规则来处理param1[]=
任何地方的查询参数:
RewriteEngine On
RewriteCond %{QUERY_STRING} ^(.*&)?param1\[\]=([^&]*)(?:&(.*))?$ [NC]
RewriteRule ^(.*?)/?$ /$1/%2?%1%3 [R=301,NE,L]
推荐阅读
- mvvm - RxBinding 和 DataBinding 是 MVVM 的最佳选择
- python - 在输入训练和验证集后如何使用交叉验证?
- netsuite - suitescript 2.0:如何在客户端脚本中修改和保存子记录
- python - 动画只能显示第一帧
- android - 切换到另一个 Fragment 后使用 RunOnUIThread 导致空指针异常
- regex - 我可以用单个 mod_rewrite 正则表达式规则替换 if/then
- asp.net - 如何在 ASP.NET 中基于数据集动态创建多个梳状框
- vue.js - 自定义 iViewUI
零件 - ruby-on-rails - 使用带有 belongs_to 关联的 RSpec 共享示例组
- excel - VBA HTML 网页拉取不匹配