Javascript Cronjob没有正确运行我的脚本
我正在编写一个简单的脚本,以选择基于服务器的最佳脚本。脚本在我的计算机上运行良好,但crontab未按预期工作 以下是我的crontab规则:Javascript Cronjob没有正确运行我的脚本,javascript,php,cron,Javascript,Php,Cron,我正在编写一个简单的脚本,以选择基于服务器的最佳脚本。脚本在我的计算机上运行良好,但crontab未按预期工作 以下是我的crontab规则: ***curl-s'https://my-domain.com/server_status.php“ 这是我的: server\u status.php <?php if (isset($_POST['server_cdn'])) { if (!empty($_POST['server_cdn'])) { $path = '
***curl-s'https://my-domain.com/server_status.php“
这是我的:
server\u status.php
<?php
if (isset($_POST['server_cdn'])) {
if (!empty($_POST['server_cdn'])) {
$path = '../player/server.txt';
$f = fopen($path, "w+");
fwrite($f, $_POST['server_cdn']);
fclose($f); chmod($path, 0777);
exit();
}
}
?>
<script>
$.getJSON("/player/servers.json", function(json) {
var script_name = json.name;
var script_version = json.version;
var prefix = json.prefix;
var _svrs = Object.keys(json.servers).length;
var mach_available = {};
for(i = 1; i <= _svrs; i++) {
if (json.servers['server'+i].status == 1) {
$.ajax({
url: "https://cdn" + json.servers['server'+i].cdn + "." + json.prefix + "/" + json.file,
type: 'POST',
async: false,
cache: false,
timeout: 7000,
error: function(){ mach_available['cdn' + json.servers['server'+i].cdn] = null; },
success: function(response){
mach_available['cdn' + json.servers['server'+i].cdn] = parseInt(response);
}
});
} else {
mach_available['cdn' + json.servers['server'+i].cdn] = null;
}
}
var min = Object.entries(mach_available).sort(function(x,y) {return x[1]-y[1]})[0];
$.ajax({
type: 'POST',
url: '/player/server_status.php',
data: {"server_cdn": min[0]},
async: true,
success: function() { }
});
});
</script>
$.getJSON(“/player/servers.json”),函数(json){
var script_name=json.name;
var script_version=json.version;
var prefix=json.prefix;
var\u svrs=Object.keys(json.servers).length;
var mach_available={};
对于(i=1;i使用SlimerJS或PhantomJS这样的浏览器是您实现这一点的方式,您将能够在服务器端执行Javascript。使用SlimerJS或PhantomJS这样的浏览器是您实现这一点的方式,您将能够在服务器端执行Javascript。我可能无法正确理解这个问题,但您是否希望Javascript能够在服务器端执行n通过cron作业?Javascript将由浏览器运行,cron将只调用页面,而不是在那里运行实际的Javascript。您正在尝试从包含Javascript代码的命令行运行脚本。Javascript仅在浏览器上运行,而不是从带有curl的终端运行。那么,我应该如何在crontab上运行Javascript?为什么不运行everything服务器端?这样会使它更可靠。看看这个(非常类似)问题与答案:由于我无法使用javascriptI在服务器上编写文件,我可能无法正确理解这个问题,但您是否希望由cron作业运行javascript?javascript将由浏览器运行,cron将只调用页面,而不会在那里运行实际的javascript。您正在尝试从命令行运行脚本,而ch中包含JavaScript代码。JavaScript只在浏览器上运行,而不是在带有curl的终端上运行。那么我应该怎么做才能在crontab上运行JavaScript?为什么不在服务器端运行一切?这样会使它更可靠。看看这个(非常类似)问题和答案:因为我无法使用javascript在服务器上编写文件