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

子域名重定向至目录但URL保持不变的配置问题

解决client.site.com.br反向代理到www.site.com.br/system/的问题

你的配置没生效主要是几个细节没调整对,我帮你修正并把关键要点说清楚:

问题根源

  1. 域名匹配规则不匹配:原来的规则只针对.com结尾的域名,现在需要适配.com.br的二级域名
  2. 语法错误:RewriteCond% {HTTP_HOST}里%和{之间缺少空格,Apache无法识别这个条件
  3. 目标域名错误:原来指向的是www.site.com,现在要改成对应.com.br的域名

修正后的完整.htaccess配置

RewriteEngine on
# 匹配不带www和带www的client.site.com.br域名
RewriteCond %{HTTP_HOST} ^client.site.com.br$ [OR]
RewriteCond %{HTTP_HOST} ^www.client.site.com.br$
# 反向代理到目标地址,保留URL路径并传递customer参数
RewriteRule ^(.*)$ https://www.site.com.br/system/$1?customer=customer [P,L]

关键配置说明

  • RewriteCond %{HTTP_HOST} ...:准确匹配你需要代理的域名,[OR]表示两个条件满足任意一个即可
  • RewriteRule里的[P]:告诉Apache使用反向代理模式,把请求转发到目标URL,同时保持浏览器地址栏不变
  • [L]:表示这是最后一条重写规则,避免后续规则(如果有的话)干扰当前代理逻辑
  • 加上https://前缀:确保目标站点是HTTPS时能正常转发,如果目标是HTTP可以去掉,但HTTPS更安全

额外注意事项

  • 确保你的Apache服务器已经启用了mod_rewrite、mod_proxy、mod_proxy_http(如果是HTTPS还要mod_proxy_https)模块,这些是反向代理必需的
  • 测试前清空浏览器缓存,避免旧的缓存导致测试结果不准确
  • 如果代理后出现500错误,检查Apache的错误日志,通常是模块未启用或者权限问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 08:46:04