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

Apache服务器下.htaccess规则:仅当目录内容不存在时重定向

Apache下WordPress的条件重定向解决方案

针对你需要的仅当/actions/目录下内容不存在时才重定向到归档域名的需求,不能用RedirectMatch(它属于mod_alias模块,无法添加存在性判断条件),需要用mod_rewrite模块来实现。

直接在主站的.htaccess文件中,添加以下规则(要放在WordPress默认的重写规则之前):

RewriteEngine On

# 仅当请求的文件/目录不存在时,重定向/actions/下的内容到归档站
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^actions/(.*)$ https://archives.sitename.it/actions/$1 [R=301,L]

# 以下是WordPress默认的重写规则(保留原内容即可)
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

规则说明:

  • RewriteCond %{REQUEST_FILENAME} !-f:判断请求的路径不是一个已存在的文件
  • RewriteCond %{REQUEST_FILENAME} !-d:判断请求的路径不是一个已存在的目录
  • RewriteRule ^actions/(.*)$ ...:匹配所有以/actions/开头的请求路径,将捕获到的$1(即actions/之后的部分)替换到归档站的对应路径中
  • [R=301,L]:R=301表示永久重定向(利于SEO),测试阶段可以改成R=302临时重定向;L表示执行完这条规则后停止后续规则处理

注意事项:

  1. 确保Apache服务器已启用mod_rewrite模块
  2. 规则必须放在WordPress默认规则之前,否则会被WordPress的规则优先处理
  3. 测试时可以先访问一个主站/actions/下不存在的路径,确认是否正确跳转到归档站;再访问存在的路径,确认不会被重定向

内容的提问来源于stack exchange,提问作者ynnesti collettivo creativo

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 19:10:36