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

如何通过htaccess配置实现旧域名URL不变显示新域名内容

实现方案说明

你需要的效果是反向代理,原有301重定向规则会强制跳转修改浏览器地址栏URL,完全不符合需求,需要替换为代理相关配置,具体操作如下:

你原有配置参考:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^abc\.test\.net$
Redirect 301 / https://test.xyz.com

第一步:修改.htaccess配置

删除原有301跳转规则,替换为以下配置:

RewriteEngine On
# 匹配所有旧域名abc.test.net的请求
RewriteCond %{HTTP_HOST} ^abc\.test\.net$
# 反向代理转发到新域名,P标识启用代理,L标识匹配后不执行后续规则
RewriteRule ^(.*)$ https://test.xyz.com/$1 [P,L]

# 替换新域名返回的重定向响应头,避免暴露新域名导致地址栏跳转
ProxyPassReverse / https://test.xyz.com/

第二步:前置依赖与注意事项

  • 提前确认Apache服务器已启用mod_rewrite、mod_proxy、mod_proxy_http三个扩展模块,配置生效前需要重启Apache服务。
  • 如果新域名test.xyz.com是HTTPS站点,还需要启用mod_ssl模块,确保服务器SSL证书校验配置正常,避免代理请求报错。
  • 如果新站点页面内存在写死的绝对路径资源(比如直接引用https://test.xyz.com/xxx.css),用户访问时会直接请求新域名资源,这种情况需要额外把新站点的资源路径改为相对路径,或者添加Substitute规则批量替换页面内的新域名引用。
  • 完全删除原有301规则后,需要清理浏览器本地的301永久重定向缓存,否则之前访问过旧域名的用户还是会被跳转到新域名。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 11:30:05