2

我正在处理的站点正在使用顶级域(.nl/ .be)来定义其语言以及它应该使用的数据库。这允许同一网站用于多个域,每个域都有自己的内容,但布局相同。

一切都很好,除非它涉及 Cron 工作。域用于定义要通过$_SERVER['HTTP_HOST']. 使用 cronjob,直接调用文件而不使用域(本地域层次结构),因此它无法派生它应该使用的数据库/语言。

有没有一种让 cron 作业使用相同原理的好方法,或者我是否坚持必须发送一个变量来定义它应该使用哪种数据库/语言?

4

2 回答 2

2

您可以在环境变量中推送一个值:

@daily     HTTP_HOST=www.example.nl php /path/to/script.php

环境变量应该出现在里面$_SERVER以使其正常工作。

于 2013-02-10T15:02:58.440 回答
0

最简单的方法是将 cron 放在 web 根目录中,使用 wget http://example.com/cron.php或 GET 并且 http_host 将自动设置 - 确保您构建逻辑以防止通过 htaccess 或限制执行滥用对某些 ip

于 2013-02-10T15:10:02.657 回答