簡體   English   中英

通過 Cron 運行 PHP 腳本

[英]Running PHP script via Cron

我正在編寫一個 php 腳本,使用 Instagram Private PHP Api。

它在“root”用戶下通過 SSH 工作正常,但是當我嘗試通過瀏覽器或 cron 運行它時,出現錯誤:警告:chmod():操作不允許在 .....

我想權限有問題,但我在服務器管理方面並不是很擅長,無法理解我能做什么=(

請幫忙,我該如何解決這個問題?

運行 PHP 的用戶必須具有 chmod 給定文件或目錄的權限。 如果您通過 CRON 運行此腳本,則可以在 CRON 作業中將 PHP 運行的用戶設置為正確的用戶。 如果您在瀏覽器中訪問該腳本,則 PHP 很可能以 php 或 php-fpm 或 Web 服務器用戶身份運行。

只需確保給定的文件或文件夾歸 PHP 運行的用戶所有。

注意:建議您在 CRON 中以 root 身份運行此腳本。

因為 Apache(或您使用的 Web 服務器)使用不同的 Linux 用戶(通常是www-data )執行 PHP,這顯然與您通過 SSH 訪問時使用的用戶帳戶具有不同的權限。

要解決這個問題,您首先必須知道您要chmod()的文件夾/文件屬於誰。 如果它屬於root ,那么出於安全考慮,不建議通過任何公共可訪問的腳本來chmod

如果它屬於您的用戶名,例如foo ,您可以更改您要chmod()的文件夾/文件的所有權,以便www-data組在 SSH 控制台中使用chown()訪問,然后您chmod()命令可以毫無問題地執行。

如果您正在編輯/etc/crontab ,請確保用戶參數(一周后的)是root

如果您通過crontab -e編輯 crontab,請添加用戶參數crontab -eu root

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM