猿问

如何授予服务器能够访问php文件而其他人不能访问的权限?

我已将其添加到 .htaccess位于项目根目录的文件中:


<Files *.php>

    Require host lamtakam.test lamtakam.com

    Require ip ::1 95.216.xx.xx

</Files>

我曾经xx.xx将我的真实ip隐藏在公共社区中,实际上,有数字而不是xs。


现在我需要每天crontab从同一服务器调用一个文件(使用 cron job ),如下所示:


0 22 * * * wget /path/to/file.php

但我收到这个错误:


--2020-09-13 13:33:55--  https://lamtakam.com/path/to/file.php

Resolving lamtakam.com (lamtakam.com)... 104.31.74.192, 172.67.174.239, 104.31.75.192, ...

Connecting to lamtakam.com (lamtakam.com)|104.31.74.192|:443... connected.

HTTP request sent, awaiting response... 403 Forbidden

2020-09-13 13:33:55 ERROR 403: Forbidden.

注意:我使用 Cloudflare,这些 IP 属于它:104.31.74.192, 172.67.174.239, 104.31.75.192


知道file.php当我可以从同一服务器访问它时如何才能访问它吗?(而不是从其他地方)


慕运维8079593
浏览 80回答 1
1回答

梦里花落0921

curl您可以在 crontab 中这样使用:curl -k https://localhost/path/to/file.php'或者:curl --insecure https://localhost/path/to/file.php按照man grep:-k, --insecure(TLS) 默认情况下,curl 建立的每个 SSL 连接都经过验证是安全的。即使对于其他被认为不安全的服务器连接,此选项也允许curl 继续进行和操作。并通过允许 IP:和 host:来修改Files指令:127.0.0.1localhost<Files *.php>&nbsp; &nbsp; Require host localhost lamtakam.test lamtakam.com&nbsp; &nbsp; Require ip ::1 127.0.0.1 95.216.xx.xx</Files>
随时随地看视频慕课网APP
我要回答