Есть ли способ автоматически запустить PHP-скрипт на веб-сервере хостинга с помощью cron?
-
05-07-2019 - |
Вопрос
У меня был скрипт, который каждый день отправляет смс-оповещения.Я хочу, чтобы он автоматически отправлял смс, получая сообщение из базы данных.Могу ли я сделать это без cron?Есть ли другое решение?Пожалуйста, помогите
Решение
Вы можете использовать webcron сервис для запуска вашего скрипта.
Другие советы
Иметь внешний AppEngine cron планировщик заданий: использовать Google AppEngine , он бесплатный . Внешняя «задача» может затем «обратный вызов» ваш PHP-скрипт.
Я не вижу, что не так с использованием локального cron
на вашем компьютере, хотя кроме заблокирован доступ к нему.
Проще говоря, вы не можете запускать php-скрипты без использования какого-либо планировщика или cron ...
У вас есть несколько вариантов:
Эмулировать поведение cron:В своем php-коде проверьте, была ли страница загружена в то время или близко к тому времени, на которое вы хотите запланировать отправку. Если сообщения еще не были отправлены, загрузите скрипт, который отправляет сообщения в фоновом режиме, и пометьте их как отправленные. .
Как предлагали другие, настройте cronjob где-нибудь еще, который будет выполнять скрипт на вашем сервере, получая URL-адрес через http (например, используя wget)
настройте задачу cron в другом месте, попросите ее запросить скрипт, который отправляет оповещения.
вы можете включить свой скрипт и запускать его каждый раз, когда кто-нибудь посещает вашу домашнюю страницу / страницу входа и т. д. настроить таблицу в MySQL под названием время. запрашивать базу данных каждый раз, когда страница посещается. if (аргумент времени) {запустить скрипт в фоновом режиме, обновить новое время в БД}
Все, что вам нужно сделать, - это определить, как часто вы хотите отправлять свои смс-сообщения. Ex. 1 раз в день строка базы данных «время» имеет дату в нем. дата, скажем, 24 часа назад. если строка БД "время" меньше или равно сегодняшнему дню минус один день 1 день, затем запустите ваш скрипт. это будет запускать ваш скрипт один раз в день.
Отступление - > кто-то должен посещать ваш сайт по крайней мере один раз в день.
Каков URL вашего сайта? Что ты делаешь?
Использование сторонних веб-крон, таких как easycron.com .
Если вы не можете настроить задачу cron на сервере, выполните ее на клиенте, к которому у вас есть доступ (например, на вашем компьютере), чтобы он выполнял запрос, когда вам нужно запустить скрипт.
Это не оптимально, но без использования какого-либо планировщика, вот что вы могли бы сделать.
<Ол>Недостатками этого является то, что:
<Ол>Я использовал планировщик задач Windows для планирования сценария на сервере, на котором раньше не было доступа к cron, это работало нормально.
Это не лучший ответ, так как ему все еще требуется cron где-то , но вы всегда можете настроить другой компьютер, на котором есть cron, например, ваш домашний компьютер, для просмотра страницы на вашем сайте. который запускает действие (используя библиотеку типа curl
или wget
).