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

如何用.htaccess实现跨域名重定向并保留指定文件夹结构?

解决.htaccess重定向时保留特定文件夹结构的问题

你的问题核心在于RewriteRule的正则匹配规则写错了——你原规则里的^example/(.*)$只会匹配以example/开头的路径,但你实际需要匹配的是foldername/开头的请求,这导致原规则根本没触发,进而出现目标URL丢失foldername/的情况。

修改后的正确规则如下:

RewriteEngine On
# 匹配来自www.example1.org的请求
RewriteCond %{HTTP_HOST} ^www\.example1\.org$ [NC]
# 匹配以foldername/开头的所有路径,捕获后续内容
RewriteRule ^foldername/(.*)$ https://www.example2.org/foldername/$1 [R=301,L]

关键说明:

  • ^foldername/(.*)$:精准匹配URL中以foldername/开头的部分,(.*)会捕获该文件夹之后的所有路径内容(包括子文件夹、文件名等)。
  • https://www.example2.org/foldername/$1:将捕获到的路径内容$1追加到目标域名的foldername/之后,确保完整路径被保留。
  • 测试阶段建议将R=301改为R=302,避免浏览器缓存永久重定向规则影响测试结果,确认无误后再改回301。
  • 确保服务器已启用mod_rewrite模块,且.htaccess文件放置在网站根目录下。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 05:15:10