如何正确设置我的 cron 作业
how to properly setup my cron job
我正在尝试设置一个 cron 作业,每周发送一次电子邮件,
根据我对设置 cron 作业的了解,cron 作业应该执行脚本。
这就是我所做的。
在我的 cron.php 页面上:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<script type="text/javascript">
window.onload=function(){
window.setTimeout(function() { document.postniid.submit(); }, 0000);
};
</script>
<form name="postniid" id="postniid" method="post" action="cron_post.php" >
<input name="email" type="hidden" id="inputInsured Name" value="wolexx007@gmail.com" />
</form>
</body>
</html>
我已经设置了一个表单,其中包含要发布到 cron_post.php 的默认电子邮件,我还让这个表单提交 onload,因为我希望 cron 会执行我的 cron.php 页面。
还有我的 cron_post.php 页面:
<?php
$reply = $_POST['email'];
$replysubject = "Auto-Reply: support | kblinsurance.com";
$replyfrom = "From: noreply@kblinsurance.com\r\n";
$replymessage .= "Testing Cron Job.\r\n\r\n";
mail($reply,$replysubject, $replymessage, $replyfrom);
?>
发送电子邮件。
当我从浏览器中测试时它可以工作,但是当我设置了一个命令来执行我的 cron 时它不会执行。
30 14 * * 1-5 php /home5/whitech3/public_html/cron/cron.php
请问这是为什么?
您混淆了客户端和服务器端代码。请google求差价
你写的javascript只有在通过浏览器加载页面时才会执行。你所有的 cron 工作现在都在做,正在渲染一个带有表单和一些 javascript 代码的页面,但实际上并不执行 javascript(这是浏览器的工作)。
请注意,您不必依赖 POST 来执行您的脚本。在您的 cron.php 页面中,您可以只使用 cron_post.php 代码(并将 $_POST[]
替换为实际的电子邮件)。
我正在尝试设置一个 cron 作业,每周发送一次电子邮件, 根据我对设置 cron 作业的了解,cron 作业应该执行脚本。
这就是我所做的。
在我的 cron.php 页面上:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<script type="text/javascript">
window.onload=function(){
window.setTimeout(function() { document.postniid.submit(); }, 0000);
};
</script>
<form name="postniid" id="postniid" method="post" action="cron_post.php" >
<input name="email" type="hidden" id="inputInsured Name" value="wolexx007@gmail.com" />
</form>
</body>
</html>
我已经设置了一个表单,其中包含要发布到 cron_post.php 的默认电子邮件,我还让这个表单提交 onload,因为我希望 cron 会执行我的 cron.php 页面。
还有我的 cron_post.php 页面:
<?php
$reply = $_POST['email'];
$replysubject = "Auto-Reply: support | kblinsurance.com";
$replyfrom = "From: noreply@kblinsurance.com\r\n";
$replymessage .= "Testing Cron Job.\r\n\r\n";
mail($reply,$replysubject, $replymessage, $replyfrom);
?>
发送电子邮件。
当我从浏览器中测试时它可以工作,但是当我设置了一个命令来执行我的 cron 时它不会执行。
30 14 * * 1-5 php /home5/whitech3/public_html/cron/cron.php
请问这是为什么?
您混淆了客户端和服务器端代码。请google求差价
你写的javascript只有在通过浏览器加载页面时才会执行。你所有的 cron 工作现在都在做,正在渲染一个带有表单和一些 javascript 代码的页面,但实际上并不执行 javascript(这是浏览器的工作)。
请注意,您不必依赖 POST 来执行您的脚本。在您的 cron.php 页面中,您可以只使用 cron_post.php 代码(并将 $_POST[]
替换为实际的电子邮件)。