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

如何配置.htaccess仅对pictures目录及其子目录实现重定向?

解决Apache重定向规则范围问题

你的规则会作用于整个根目录,核心原因是当前规则没有限定仅匹配/pictures/开头的请求——RewriteBase只是用来调整重写时的路径基准,不是用来过滤请求范围的。

给你两种可行的解决方式:

方式1:将规则移至pictures目录的.htaccess(推荐)

直接在/root/pictures/.htaccess中写入以下规则:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) https://archive.com/pictures/$1 [R=302,L]

这样规则只会处理pictures目录下的请求,捕获的路径片段$1会直接拼在目标URL的/pictures/后,完全符合你预期的重定向结构。

方式2:在根目录.htaccess中限定规则匹配范围

如果必须把规则留在根目录的.htaccess,修改规则为:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^pictures/(.*) https://archive.com/pictures/$1 [R=302,L]

这里通过^pictures/(.*)明确限定了只有请求路径以pictures/开头的才会触发重定向,其他目录的请求不会被干扰。

两种方式都能实现你要的效果:只有/pictures/下不存在的文件或目录,才会保留原路径结构重定向到archive.com对应地址。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 07:44:56