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

请求编写支持两级路径结构的URL短链接.htaccess RewriteRule规则

请求编写支持两级路径结构的URL短链接.htaccess RewriteRule规则

嗨,我懂你现在的困扰啦!原来的单级短链接规则跑的好好的,现在想扩展成两级路径结构(比如http://mydomain/l1/stack),把第一部分作为固定的level参数,第二部分传任意字符串当decode值,还要保留phpmyadmin的特殊规则对吧?

我给你调整好了规则,你可以直接用,下面是完整的.htaccess代码:

Options +FollowSymLinks -Indexes -MultiViews

RewriteEngine on

# 保留原有的phpmyadmin专属规则,确保访问/phpmyadmin不会被重写
RewriteRule ^phpmyadmin$ phpmyadmin [L]

# 匹配两级路径:固定level + 任意decode字符串
# 把你需要的固定level值放在(l1|a1)里,多个值用|分隔,比如(l1|a1|test|foo)
RewriteRule ^(l1|a1)/([^/]+)$ decoder.php?level=$1&decode=$2 [L]

# 如果你还需要保留原来的单级路径规则(比如/stack这类),就保留下面这行;不需要就删掉
RewriteRule ^([\w\d-]{1,})$ decoder.php?decode=$1 [L]

规则解释:

  1. 两级路径规则核心:^(l1|a1)/([^/]+)$

    • ^和$分别匹配URL的开头和结尾,确保不会匹配到部分路径
    • (l1|a1)是第一个捕获组,专门匹配你指定的固定level值,你可以根据需求添加更多值,比如(l1|a1|b2|admin)
    • /匹配两级路径之间的斜杠
    • ([^/]+)是第二个捕获组,匹配除了斜杠之外的任意非空字符串,完美适配你需要的任意decode内容(包括点号、特殊字符这些)
    • [L]标记表示匹配到这条规则后就停止后续规则处理,避免冲突
  2. 单级规则保留:如果你不需要再支持原来的单级短链接,直接删掉最后一行即可,避免和两级规则产生冲突。

测试示例:

  • 访问http://mydomain/l1/stack → 重写为decoder.php?level=l1&decode=stack
  • 访问http://mydomain/a1/wH4tever. → 重写为decoder.php?level=a1&decode=wH4tever.
  • 访问http://mydomain/phpmyadmin → 依然直接指向phpmyadmin,不受重写影响

备注:内容来源于stack exchange,提问作者m2ts

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.23 07:49:16