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

已加入白名单但Crontab仍被.htaccess拦截的问题求助

问题

我想限制仅自己的IP和服务器IP可访问script.php和script2.php两个脚本,已经在.htaccess中加入服务器IP白名单,但通过Crontab运行脚本时出现403 Forbidden错误,手动从自身IP访问则正常。

当前配置

.htaccess 配置

Options +FollowSymlinks
RewriteEngine on
#the urls that should be checked
RewriteCond %{REQUEST_URI} ^(/script.php|/script2.php).*$
RewriteCond %{REMOTE_ADDR} !=194.1....(My server Ip)
RewriteCond %{REMOTE_ADDR} !=0.0.0.0
RewriteCond %{REMOTE_ADDR} !=127.0.0.1
RewriteCond %{REMOTE_ADDR} !=172......(My Ip)
RewriteRule ^.*$ / [F]

Crontab 配置(Hostinger面板)

wget -O /dev/null mydomain.com/script.php/  

错误信息

--2022-07-15 09:30:02--  mydomain.com/script.php
Resolving mydomain.com (mydomain.com)... 2a02:4780:b....., 194.1....(my server ip)
Connecting to mydomain.com(mydomain.com)|2a02:4780:b:....|:80... connected.
HTTP request sent, awaiting response... 403 Forbidden
2022-07-15 09:30:02 ERROR 403: Forbidden.

解决方案

问题根源

从错误日志可见,wget解析域名时同时获取到IPv6和IPv4地址,且优先使用IPv6地址连接服务器,但你的.htaccess仅添加了服务器的IPv4地址到白名单,导致请求的REMOTE_ADDR是未被允许的IPv6地址,触发403拦截规则。

解决办法

方法1:添加服务器IPv6地址到白名单

在.htaccess中新增一条针对服务器IPv6地址的规则:

RewriteCond %{REMOTE_ADDR} !=2a02:4780:b.....(服务器的IPv6地址)

修改后的完整规则:

Options +FollowSymlinks
RewriteEngine on
#the urls that should be checked
RewriteCond %{REQUEST_URI} ^(/script.php|/script2.php).*$
RewriteCond %{REMOTE_ADDR} !=194.1....(My server Ip)
RewriteCond %{REMOTE_ADDR} !=2a02:4780:b.....(服务器的IPv6地址)
RewriteCond %{REMOTE_ADDR} !=0.0.0.0
RewriteCond %{REMOTE_ADDR} !=127.0.0.1
RewriteCond %{REMOTE_ADDR} !=172......(My Ip)
RewriteRule ^.*$ / [F]

方法2:强制wget使用IPv4连接

修改Crontab命令,添加-4参数强制wget用IPv4访问,此时请求的REMOTE_ADDR就是你已配置的服务器IPv4地址:

wget -4 -O /dev/null mydomain.com/script.php/  

方法3:直接用本地回环地址访问(推荐)

直接通过127.0.0.1访问脚本,本地请求的REMOTE_ADDR是127.0.0.1,已在你的白名单中,无需额外配置,还能避免域名解析的开销:

wget -O /dev/null http://127.0.0.1/script.php/  

如果脚本依赖域名环境,可在请求头中添加Host参数:

wget -O /dev/null --header="Host: mydomain.com" http://127.0.0.1/script.php/  

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 20:15:37