我正在尝试设置一个需要使用curl的cronjob,并且我直接从crontab中调用它
I'm trying to set up a cronjob which requires curl, and I'm calling it directly from crontab with
* * * * * /usr/bin/php myurl/my_cron.php
问题是,我的phpcli似乎没有安装curl模块。
当我从浏览器访问URL时它能正常工作,但是当我运行以下命令时:
php -q myfile.php
在命令行中,它返回
PHP Fatal error: Call to undefined function curl_init() in my_cron.php on line 20
当我运行php -m
时,curl模块没有显示出来。然而当我在浏览器中转储php_info()时,该模块出现了,并且显示它已经正确安装。
另一个问题是,我一直试图使用apt-get
将curl安装到服务器上(Ubuntu 12.04 php 5.4),但它似乎会使我的PHP崩溃,因为它开始尝试在我尝试浏览的任何地方下载index.php
文件。
这里是我尝试安装curl但导致PHP崩溃的方法:
sudo apt-get install php-curl
sudo apt-get install curl libcurl3 libcurl3-dev php5-curl
在每次执行这些操作之后,我重新启动了apache2服务器,但仍然无法打开页面,而是尝试下载文件。
我该如何只为cli安装php5-curl
,以便我的服务器可以运行它,而不必通过浏览器进行操作?
另一种可能性是我可以通过从crontab文件中使用wget来运行cronjobs,但我听说这不是最好的选择,潜在地可能不可靠。
非常感谢任何帮助。谢谢!