Как проверить работу cron на локальном сервере, например WAMP?
Как проверить работу cron на локальном сервере, например WAMP?
Ответы
Ответ 1
В Windows нет Cron (это основная программа планирования задач для Linux-систем). Версия Windows для этого - Task Scheduler. Этот вопрос рекомендует использовать команду at.
Итак, что Cron не имеет ничего общего с установкой Apache, Mysql, PHP, я не думаю, что можно надежно проверить созданные вами cronjobs для Linux Cron в окнах (возможно, с Cygwin).
Ответ 2
Вы можете создать 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 со стороны сервера.
Ответ 3
вы можете запускать свой script непосредственно из URL-адреса, означает, что если вы хотите запустить cron_test.PHP скрипт из настройки cron, и вы хотите проверить результат на то же самое, вы можете напрямую запустить этот файл с localhost как http://www.localhost/XXXX/cron_test.php.
Ответ 4
Установите cron (да, это доступно для Windows).
Я бы не хотел этого делать на Windows. Вероятно, вам лучше будет захватить копию VirtualBox и создать что-то, что лучше напоминает вашу производственную среду, чтобы сделать вашу разработку.
Ответ 5
Просто запустите задание из командной строки. Это работа, которую вы хотите протестировать, а не cron. Если вам нужно, чтобы он выполнялся с периодическими интервалами для имитации cron, используйте средство "Запланированные задания" Windows
Ответ 6
Вы можете запустить это:
set_time_limit(0);
ignore_user_abort(true);
while (1)
{
//your code here....
sleep($timetowait);
}
Вы можете закрыть браузер script, чтобы продолжить
set_time_limit(0);
сделайте вашу работу script без ограничения времени
sleep($timetowait);
определить время ожидания перед выполнением следующего
цикл while()
ignore_user_abort(true);
пусть script продолжается, даже если браузер закрыт
while(1)
- бесконечный цикл, поэтому это никогда не остановится, пока вы не выйдете из wamp.
Ответ 7
Вы можете просто выполнять задания в среде Windows только с одной строкой. Я почти потратил 5 часов, поэтому хочу поделиться с другими, это сделать задачу.
- В программе укажите путь php.exe, с моей установкой - c:\wamp\bin\php\php5.3.5\php.exe.
- Во-вторых, вы должны указать абсолютный путь к файлу, который вы хотите запустить.
-f c:\wamp\www\foo\foo.php
в аргументе
Итак, что все. Нет необходимости устанавливать что-либо.
Ответ 8
Попробуйте это commnad
<?php
echo exec('0 13 * * * D:\wamp\bin\php -f D:\wamp\www\be.php');
?>
Ответ 9
<meta http-equiv="refresh" content="0; url=http://localhost/myproject/cron.php" />
немедленно установите метарешетку:
content = 0
каждые 5 секунд:
content = 5
Ответ 10
Что вы подразумеваете под "работой cron"? На многих сайтах есть специальная страница, такая как "cron.php", которая периодически попадает, как обычно:
0 * * * * wget http://example.org/cron.php
В этом случае вам просто нужно вручную нажать ваш php файл cron, чтобы имитировать поведение.