HTML 和 img_src 字符串中的纪元时间
HTML and Epoch time in img_src string
我已经四处寻找了一段时间,需要一些帮助来解决一些对我来说似乎超级简单但并非如此的事情,因为我对 HTML 和脚本编写还很陌生。
我的主要 objective 是在每次提供网页时在下面的 link 上更新 epoch/unix 时间。
如何在 HTML 内执行此操作(请参阅下面的代码)?我还研究了编写一个 bash 脚本来替换文件中的纪元时间参数和 运行 一个经常编辑的 cron 作业。
比如我下面的img_srclink中有如下参数:
t1=1420591677&t2=1421196477
其中 t1=current_system_epoch_time 和 t2=(current_system_epoch_time - 12 小时)
<!DOCTYPE html>
<html>
<body>
<img src="http://nagiosserver/cgi-bin/nagios3/trends.cgi?createimage&t1=1420591677&t2=1421196477&assumeinitialstates=yes&assumestatesduringnotrunning=yes&initialassumedhoststate=0&initialassumedservicestate=0&assumestateretention=yes&includesoftstates=no&host=<hostname>&backtrack=8&zoom=4" >
</body>
</html>
如果我需要进一步解释,请告诉我!谢谢!
你可以这样做:
<!DOCTYPE html>
<html>
<body>
...
<script>
var epoch = new Date() / 1000;
var epoch24=epoch-3600*24;
var imgstring = //create image string concatenating strings and vars
</script>
...
<img onload="src=imgstring">
...
</body>
</html>
或者,如您所述,我更喜欢使用服务器端 cron 作业。
非常感谢您的回复!我最终在暂存虚拟机上编写了一个 bash 脚本来更新纪元时间,如下所示。这可能会写得更好,但我想我会分享。在我的 httpd.conf 文件中,我必须在执行 html 代码的目录部分的选项中包含 +Includes。
#!/bin/bash
curr=`date +%s`;
echo $curr;
neg24=$(echo "`date +%s` - 84600"| bc);
echo $neg24;
cp /var/www/html/nagios.html /root/html_backs/nagios.$curr.html
cp /root/nagios_www /root/nagios_www.bak
sed -i "s/time1/$neg24/g" /root/nagios_www
sed -i "s/time2/$curr/g" /root/nagios_www
rm -f /var/www/html/nagios.html
cp /root/nagios_www /var/www/html/nagios.html
chmod +x /var/www/html/nagios.html
mv /root/nagios_www.bak /root/nagios_www
nagios_www 有我所有的 HTML 代码,除了以下差异:
t1=1420591677&t2=1421196477 是 t1=time1&t2=time2
再次感谢!
我已经四处寻找了一段时间,需要一些帮助来解决一些对我来说似乎超级简单但并非如此的事情,因为我对 HTML 和脚本编写还很陌生。
我的主要 objective 是在每次提供网页时在下面的 link 上更新 epoch/unix 时间。
如何在 HTML 内执行此操作(请参阅下面的代码)?我还研究了编写一个 bash 脚本来替换文件中的纪元时间参数和 运行 一个经常编辑的 cron 作业。
比如我下面的img_srclink中有如下参数:
t1=1420591677&t2=1421196477
其中 t1=current_system_epoch_time 和 t2=(current_system_epoch_time - 12 小时)
<!DOCTYPE html>
<html>
<body>
<img src="http://nagiosserver/cgi-bin/nagios3/trends.cgi?createimage&t1=1420591677&t2=1421196477&assumeinitialstates=yes&assumestatesduringnotrunning=yes&initialassumedhoststate=0&initialassumedservicestate=0&assumestateretention=yes&includesoftstates=no&host=<hostname>&backtrack=8&zoom=4" >
</body>
</html>
如果我需要进一步解释,请告诉我!谢谢!
你可以这样做:
<!DOCTYPE html>
<html>
<body>
...
<script>
var epoch = new Date() / 1000;
var epoch24=epoch-3600*24;
var imgstring = //create image string concatenating strings and vars
</script>
...
<img onload="src=imgstring">
...
</body>
</html>
或者,如您所述,我更喜欢使用服务器端 cron 作业。
非常感谢您的回复!我最终在暂存虚拟机上编写了一个 bash 脚本来更新纪元时间,如下所示。这可能会写得更好,但我想我会分享。在我的 httpd.conf 文件中,我必须在执行 html 代码的目录部分的选项中包含 +Includes。
#!/bin/bash
curr=`date +%s`;
echo $curr;
neg24=$(echo "`date +%s` - 84600"| bc);
echo $neg24;
cp /var/www/html/nagios.html /root/html_backs/nagios.$curr.html
cp /root/nagios_www /root/nagios_www.bak
sed -i "s/time1/$neg24/g" /root/nagios_www
sed -i "s/time2/$curr/g" /root/nagios_www
rm -f /var/www/html/nagios.html
cp /root/nagios_www /var/www/html/nagios.html
chmod +x /var/www/html/nagios.html
mv /root/nagios_www.bak /root/nagios_www
nagios_www 有我所有的 HTML 代码,除了以下差异: t1=1420591677&t2=1421196477 是 t1=time1&t2=time2
再次感谢!