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

如何在Direct Admin中重定向全站但排除特定URL?.htaccess配置求助

解决Direct Admin下全站重定向排除特定URL的问题

你的两段规则逻辑本身没问题,但可能是浏览器缓存了301永久重定向,或者规则匹配场景不够全面。可以按以下方式修改.htaccess文件:

正确规则写法(精确匹配特定URL)

RewriteEngine On

# 排除指定URL,NC表示不区分大小写,L表示终止后续规则执行
RewriteRule ^filename\.html$ - [NC,L]

# 重定向所有其他请求到目标域名,测试阶段用302避免缓存,确认正常后改为301
RewriteRule ^(.*)$ http://www.example.com/$1 [R=302,L]

如果需要排除包含该URL的所有请求(比如带查询参数的filename.html?id=1),可以改用RewriteCond匹配完整请求路径:

RewriteEngine On

# 排除所有包含filename.html的请求,不区分大小写
RewriteCond %{REQUEST_URI} !/filename\.html [NC]

# 重定向其他请求到目标域名
RewriteRule ^(.*)$ http://www.example.com/$1 [R=302,L]

关键注意事项

  • 测试阶段优先用R=302临时重定向,避免浏览器缓存301规则导致修改不生效;确认规则正常后,再改为R=301永久重定向。
  • 测试时清除浏览器缓存或使用隐私窗口,避免旧重定向缓存干扰结果。
  • 确保.htaccess文件放在旧域名的根目录下,且Direct Admin已启用Apache的Rewrite模块(一般默认开启)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 03:03:22