我有一个cron文件,monthly.php,我想阻止使用网络浏览器直接访问。它只能通过CPanel cron访问。
感谢。
答案 0 :(得分:5)
不要把它放在webroot下面。只需使用命令行php程序执行它。
答案 1 :(得分:4)
您可以使用.htaccess拒绝访问它。或者您可以将其移出htdocs
或public_html
目录。
<Files "cron.php">
Order deny,allow
Allow from name.of.this.machine
Allow from another.authorized.name.net
Allow from 127.0.0.1
Deny from all
</Files>
因此只能从服务器请求。
答案 2 :(得分:1)
如果您出于某种原因需要将其放入webroot中,请尝试以下操作:Can PHP detect if its run from a cron job or from the command line?
答案 3 :(得分:0)
只需传入一把钥匙即可保护它。并且不要向浏览器报告“缺少关键参数”,如果密钥不存在则只需要die()。请不要使用参数“key”,使用自己喜欢的东西:
http://myscript.com/monthly.php?mycomplexkeyname=ksldhfguorihgiauzsiludrfthgo45j1234134