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

如何通过Apache.htaccess配置仅允许域内指定来源访问目录

Apache .htaccess 按来源页限制目录访问配置

将以下规则写入mydomain.com/secretfolder目录下的.htaccess文件即可实现需求,无需修改站点根目录配置:

RewriteEngine On

# 匹配非指定来源页的请求,NC标记代表不区分大小写匹配
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?mydomain\.com/folder(/|$) [NC]
# 所有不符合来源要求的请求直接返回403禁止访问,L标记代表停止执行后续规则
RewriteRule ^ - [F,L]

规则逻辑说明

  • 开启Apache重写引擎后,首先校验请求的HTTP_REFERER头(也就是记录用户跳转来源地址的字段)
  • 正则^https?://(www\.)?mydomain\.com/folder(/|$)会精准匹配从http/https协议、带/不带www前缀的mydomain.com/folder路径(含该路径下所有子页面)发起的跳转请求,不会误匹配/folderfake这类前缀相似的路径
  • 所有不满足上述来源匹配规则的请求都会被直接拦截返回403,覆盖两类需要禁止的场景:
    • 用户直接在地址栏输入私密目录URL、从收藏夹打开私密目录:这类请求不会携带Referer头,会被直接拦截
    • 用户从域名根路径、站点内其他非/folder页面、外站跳转到私密目录:Referer不匹配白名单规则,会被拦截

配置调整提示

  • 将代码中的mydomain.com替换为实际域名,如果站点没有部署www子域,可以删掉规则里的(www\.)?段
  • 将代码中的/folder替换为实际指定的允许跳转的来源页面路径

注意:HTTP_REFERER字段可以被浏览器插件、抓包工具伪造,这套规则仅适合做普通场景的访问门槛拦截,无法防御刻意的伪造请求攻击。如果私密目录存放的是高敏感资源,建议额外搭配服务端会话鉴权、用户权限校验逻辑做防护。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 19:30:09