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

如何通过htaccess移除URL参数实现参数值转访问路径

.htaccess查询参数转路径段配置方案

要实现localhost/?url=abc到localhost/abc的地址转换,按以下步骤配置即可:

  • 前置检查
    • 确认Apache服务已开启mod_rewrite模块
    • 确认站点目录配置中AllowOverride项设为All,允许.htaccess规则生效
  • 核心规则
    将以下代码写入网站根目录的.htaccess文件,放在所有已有规则的最前面:
RewriteEngine On

# 外跳:将带?url=参数的根路径请求重定向为路径格式
RewriteCond %{QUERY_STRING} ^url=([a-zA-Z0-9_-]+)$ [NC]
RewriteRule ^$ /%1? [R=302,L]

# 内转:将路径格式请求隐式转发回原入口程序
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9_-]+)$ /?url=$1 [L]
  • 注意事项
    • 第一条规则末尾的?是核心配置,作用是丢弃原请求的查询串,避免重定向后地址栏残留?url=xxx参数
    • 正则部分[a-zA-Z0-9_-]是url参数值的允许字符范围,如果参数包含中文、斜杠等字符,可按需调整匹配规则
    • 测试阶段请使用R=302临时重定向,避免301永久重定向被浏览器强缓存导致调试异常,确认效果符合预期后再改为R=301
    • 规则中!-f和!-d判断是为了跳过真实存在的文件、目录请求,避免影响静态资源加载

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 19:21:29