我的网站位于Infomaniak云服务器上。
我可以使用Authentification Digest创建一个cron任务。
所以我做了一个方法" updateAction()"更新我的数据库。
如果我在浏览器中运行此方法(http://site1.com/update/),则使用我的用户名和密码进行身份验证。 (它有效并且数据库已更新)
我在我的" Infomaniak Cloud Server"中创建了一个cronjob。使用摘要式身份验证和网址:http://site1.com/update/
我收到了这封邮件通知:
Cron名称:更新
日期:19/01/2018 16:51:18
结果:确定
细节:204
回应:没有回复
因此,HTTP响应是" 204:没有内容" 我的数据库没有更新。
你能帮帮我吗?
所以解决方案是:
$url="http://site1.com/update/";
define('USERNAME','user');
define('PASSWORD','12345');
$ch=null;
try
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, USERNAME . ":" . PASSWORD);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
$resp = curl_exec($ch);
}
catch(Exception $ex)
{
}