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

Bitnami Apache Rewrite规则配置求助:站点迁子域名后链接失效

Apache重定向配置修正方案

原配置存在的问题

  • 域名拼写错误:RewriteCond %{HTTP_HOST} ^(?:www\.)?domainnmae\.com$ [NC] 中的 domainnmae 应为 domainname,这是导致规则无法匹配的核心原因
  • 规则匹配逻辑可优化:原规则的查询字符串条件限制过严,若URL附带其他参数则无法触发重定向;重复的RewriteEngine On声明属于冗余配置

修正后的完整重定向规则段

将虚拟主机配置中# BEGIN: Enable non-www to www redirection到# END: Enable non-www to www redirection之间的内容替换为以下代码:

RewriteEngine On
# 匹配4层动态文件夹+show路径,重定向到子域名
RewriteCond %{HTTP_HOST} ^(www\.)?domainname\.com$ [NC]
# 若需仅匹配带elem参数的URL,可添加下方注释的查询字符串条件
# RewriteCond %{QUERY_STRING} (^|&)elem=[^&]+(&|$) [NC]
RewriteRule ^([^/]+/){4}show/?$ https://www.subdomain.domainname.com%{REQUEST_URI} [R=301,L,NC,NE]

# 非www转www重定向
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} !^localhost
RewriteCond %{HTTP_HOST} !^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(:[0-9]+)?$
RewriteCond %{REQUEST_URI} !^/\.well-known
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [R=permanent,L]

修改说明

  1. 修正域名拼写:修复domainnmae的拼写错误,确保主机名匹配正常
  2. 简化路径匹配:用([^/]+/){4}替代重复的[^/]+/,更简洁地匹配4个动态文件夹的路径结构
  3. 可选的参数限制:若仅需对带elem参数的URL重定向,取消注释对应的查询字符串条件即可;若所有符合路径格式的URL都需重定向,则保留现有配置
  4. 规则优先级:将子域名重定向规则放在非www转www规则之前,确保目标路径先被处理,避免被后续规则拦截

验证步骤

  1. 保存修改后的wordpress-https-vhost.conf文件
  2. 重启Apache服务:sudo /opt/bitnami/ctlscript.sh restart apache
  3. 用浏览器或curl工具测试原有链接,确认是否正确跳转到子域名地址

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 08:56:17