Запуск PHP-скрипта через Cron - PullRequest
0 голосов
/ 01 марта 2019

Я кодирую скрипт php, используя Instagram Private PHP Api.

Он работает нормально через SSH под пользователем «root», но когда я пытаюсь запустить его через браузер или cron, я получаю ошибку: Предупреждение: chmod (): операция не разрешена в .....

Я думаю, что-то не так с разрешениями, но я не очень хорош в администрировании сервера и не могу понять, чтоЯ могу сделать = (

Пожалуйста, помогите, как я могу решить эту проблему?

Ответы [ 3 ]

0 голосов
/ 01 марта 2019

Поскольку Apache (или веб-сервер, который вы используете) выполняет PHP с использованием другого пользователя Linux (обычно www-data), который, очевидно, имеет другое разрешение, чем учетная запись пользователя, которую вы использовали при доступе через SSH.

Чтобы решить эту проблему, сначала вы должны знать, какая папка / файл, к которому вы идете chmod(), принадлежит кому.Если он принадлежит root, то не рекомендуется chmod с помощью каких-либо сценариев, доступных публично из-за соображений безопасности.

Если он принадлежит вашему имени пользователя, скажем foo, вы можетеизмените владельца папки / файла, к которому вы собираетесь chmod() быть доступным для группы www-data, используя chown() в консоли SSH, тогда вы можете без проблем выполнить команду chmod().

0 голосов
/ 01 марта 2019

Если вы редактируете /etc/crontab, убедитесь, что пользовательский параметр (один после недели) равен root .

Если вы редактируете crontab с помощью crontab -e, добавьте пользовательский параметрcrontab -eu root.

0 голосов
/ 01 марта 2019

Пользователь, с которым работает PHP, должен иметь права на chmod для данного файла или каталога.Если вы запускаете этот скрипт через CRON, вы можете указать пользователю, что PHP запускается как прямо в задании CRON.Если вы посещаете скрипт в браузере, PHP, вероятно, работает как php или php-fpm или как пользователь веб-сервера.

Просто убедитесь, что данный файл или папка принадлежит пользователю, под которым работает PHP.

Примечание: Не рекомендуется запускать этот скрипт от имени пользователя root в CRON.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...