如何仅针对myname.me将指定路径重定向至其他域名对应路径?
解决myname.me/a-path定向问题
你的问题出在之前的两个规则都存在语法或匹配逻辑的问题:
- 第一个规则的
RewriteRule匹配模式没加开头的/,也没锚定结尾,可能会误匹配到其他包含a-path的路径; - 第二个规则的
RewriteRule缺少必填的匹配模式,属于语法错误。
给你一个正确的配置,既能实现定向需求,又不会影响myname.com的路径:
RewriteEngine On # 仅匹配myname.me域名 RewriteCond %{HTTP_HOST} ^myname\.me$ # 匹配/a-path、/a-path/以及后续所有子路径,子路径会同步带到目标地址 RewriteRule ^/a-path(/.*)?$ https://blog.myname.com/this-path/$1 [L,R=301]
如果只需要精确匹配/a-path(包括带结尾斜杠的/a-path/),不需要同步子路径,可以用更严格的匹配:
RewriteEngine On RewriteCond %{HTTP_HOST} ^myname\.me$ RewriteRule ^/a-path/?$ https://blog.myname.com/this-path/ [L,R=301]
注意事项:
- 确保Apache已经启用了
mod_rewrite模块; - 这个配置可以放在站点根目录的
.htaccess文件里,或者对应的虚拟主机配置段中; - 301是永久重定向,测试阶段可以先用
R=302临时重定向,确认没问题后再改成301。
内容的提问来源于stack exchange,提问作者Luke S
相关产品推荐
相关产品推荐

