Как проверить работу cron на локальном сервере, например WAMP?
Windows не имеет Cron (это основная программа планирования задач для Linux-систем). Версия Windows для этого – Планировщик заданий . Этот вопрос рекомендует использовать команду at.
Так что Cron не имеет ничего общего с установкой Apache, Mysql, PHP, я не думаю, что можно надежно проверить созданные вами cronjob для Linux Cron в окнах (возможно, с Cygwin ).
Вы можете создать html-страницу и открыть ее в браузере. Функция javascript setInterval будет вызывать определенные периоды.
Ниже приведен код для этого. Укажите интервал (5000, например, каждые 5 секунд)
<html> <head> <title>Cron</title> </head> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <body> <h1>Cron page</h1> <script type="text/javascript"> setInterval(function(){ $.get('http://localhost/test/test.php', function(data) { console.log(data); }); }, 5000); </script> </body> </html>
Примечание. Чтобы избежать CORS, вы должны вызвать ajax с одного хоста или разрешить CORS со стороны сервера.
вы можете запускать свой скрипт непосредственно из URL-адреса, означает, что если вы хотите запустить скрипт cron_test.php из настройки cron, и вы хотите проверить результат для него, вы можете напрямую запустить этот файл с локального хоста, например http: //www.localhost/ XXXX / cron_test.php .
Просто запустите задание из командной строки. Это работа, которую вы хотите протестировать, а не cron. Если вам нужно, чтобы он выполнялся с периодическими интервалами для имитации cron, используйте средство «Запланированные задания» Windows
Установите cron (да, он доступен для Windows ).
Однако я бы не хотел этого делать на Windows. Вероятно, вам лучше будет захватить копию VirtualBox и создать что-то, что лучше напоминает вашу производственную среду, чтобы сделать вашу разработку.
Вы можете запустить это:
set_time_limit(0); ignore_user_abort(true); while (1) { //your code here.... sleep($timetowait); }
Вы можете закрыть ваш браузер, сценарий будет продолжаться
set_time_limit(0);
сделайте свой скрипт без ограничения времени
sleep($timetowait);
определить время ожидания перед выполнением следующего цикла while ()
ignore_user_abort(true);
пусть сценарий продолжается, даже если браузер закрыт
while(1)
представляет собой бесконечный цикл, поэтому это никогда не остановится, пока вы не выйдете из тембра.
Вы можете просто выполнять свои задания в среде Windows только с одной строкой. Я почти потратил 5 часов, поэтому хочу поделиться с другими, это сделать задачу.
-fc:\wamp\www\foo\foo.php
в аргументе Вот и все. Нет необходимости устанавливать что-либо.
Попробуйте это commnad
<?php echo exec('0 13 * * * D:\wamp\bin\php -f D:\wamp\www\be.php'); ?>
<meta http-equiv="refresh" content="0; url=http://localhost/myproject/cron.php" />
немедленно установите метарешетку: content = 0 каждые 5 секунд: content = 5
Что вы подразумеваете под «работой cron»? На многих веб-сайтах есть специальная страница, такая как «cron.php», которая периодически появляется, как обычно:
0 * * * * wget http://example.org/cron.php
В этом случае вам просто нужно вручную ударить ваш файл cron php, чтобы имитировать поведение.