.htaccess Crontab被htaccess阻止甚至列入白名单

7uhlpewt  于 2022-11-16  发布在  其他
关注(0)|答案(1)|浏览(165)

我试图阻止除了我自己和我的服务器之外的所有对我的两个脚本的访问,但是当我试图创建一个crontab来运行我的脚本时,我得到了错误403,即使我的服务器IP在我的htaccess中被列入白名单。
这是我的.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.

如果我从我的ip手动运行,它工作得很好。那么有没有一种方法可以让我的脚本作为一个crontab运行,并且不能被其他人通过url访问。只有我和我的服务器可以访问

vfh0ocws

vfh0ocws1#

我想我知道了,我只是在RewriteCond %{REMOTE_ADDR}前面加了这一行,现在正在工作,没有人可以通过url访问,服务器可以正常访问

RewriteCond %{HTTP_USER_AGENT} !^Wget [NC]

相关问题