Я запускаю cronjob, который должен записывать данные в кеш. Я хотел поместить эту cronjob в свою личную папку, однако, даже после того, как CHMODding кэш-папка в частной папке, она не получает права на запись. Кажется, это похоже на функцию plesk.Как вы проверяете, выполняет ли сервер скрипт PHP?
Итак, теперь я разместил cronjob в общей папке. Тем не менее, мне нужно убедиться, что только сценарий может выполнять только сервер. Как насчет следующего в верхней части cronjob?
if ($_SERVER['SERVER_ADDR'] != $_SERVER['REMOTE_ADDR']) die();
Это похоже на работу. Разве это не эксплуатируется, например. может ли пользователь манипулировать его remote_addr на моем сервере? Или есть лучший способ проверить это?
Другой вопрос, у меня есть то, что приведенный выше код возвращает 2 предупреждения, даже если это не похоже на работу:
PHP Notice: Undefined index: SERVER_ADDR in ... on line 2
PHP Notice: Undefined index: REMOTE_ADDR in ... on line 2
Любая идея, что является причиной этого?
У меня нет доступа к консоли, к сожалению. Это общий веб-хостинг. – Tom
Если вы можете настроить задания cron (через панель администратора), вы все равно сможете выполнить эту работу, но вы можете потерять часть безопасности (например: нужно переместить реестр кэша в корневой каталог). –
Я попытался создать новую папку перед корнем документа в моем ftp-клиенте, однако я получаю сообщение об отказе в разрешении. – Tom