You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现带两个参数的.htaccess URL重写?

.htaccess重写规则修复方案

你修改后的规则无法生效的原因很明确:

  • 正则只定义了一个捕获分组,却引用了不存在的$2变量
  • 正则没有匹配两段路径的结构,自然无法触发对应重写

以下是能同时支持单段(如https://example.com/admin)和两段(如https://example.com/admin/profile)路径的正确规则:

RewriteEngine On

# 匹配两段路径(含末尾可选斜杠)
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/?$ index.php?key=$1&keytwo=$2 [L]

# 匹配单段路径(含末尾可选斜杠)
RewriteRule ^([a-zA-Z0-9_-]+)/?$ index.php?key=$1 [L]

规则说明

  • 优先匹配两段路径:正则^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/?$会捕获两段路径内容,分别赋值给$1和$2,/?$兼容带/和不带/的两种URL格式,[L]标记确保匹配后不再执行后续规则
  • 单段路径规则复用了/?$,合并了原规则中两条重复的定义,保持原功能的同时更简洁
  • 你的index.php可以通过$_GET['key']和$_GET['keytwo']分别获取两段路径的参数值

内容的提问来源于stack exchange,提问作者StripyTiger

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 23:57:05