asp与php中如何定时生成页面
这篇文章主要介绍asp与php中如何定时生成页面,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
PHP版本的的定时生成页面的:
<?php$file = dirname(__FILE__).'/index.html';$timex=time()-filemtime($file); //间隔时间,单位秒if($timex>7200){ //间隔大于2小时,重新生成echo "<script language=javascript class="lazy" data-src='crhtml.php'></script>";}?>
ASP版本的的定时生成页面的:
<%'不缓存Response.Buffer = True Response.ExpiresAbsolute = Now() - 1 Response.Expires = 0 Response.cachecontrol = "no-cache"'读取最后修改时间FPath=server.mappath("index.html") set fso=server.CreateObject("scripting.filesystemobject") If fso.fileExists(FPath) Then Set f = fso.GetFile(FPath) crdate=f.DateLastModifiedend ifif DateDiff("h",crdate,now())>10 then '时间间隔大于一定值response.write "<iframe border=0 frameborder=0 scrolling=no width=0 height=0 class="lazy" data-src=""/crhtml.asp""></iframe>"end if%>
使用方法:在网站的流量大的页面,一般为首页用 iframe 调用上面的代码即可,如插入 <iframe border=0 frameborder=0 scrolling=no width=0 height=0 class="lazy" data-src="/create.asp"></iframe>
2011-7-9 @ PS更新:正如下面留评论的朋友所说,此种方法的确会增加服务器负担。为了避免这种方式的缺点,有2种方法来解决,
一、减少频繁访问被调用页面的次数,如在流量不大的页面调用 create.asp ;
二、直接使用 linux cron定时服务、或windows计划任务或一些定时执行命令的小软件 例如:hou任务计划。
参考文章如下:
linux使用crontab命令定时重启服务器
Cron定时执行带参数的PHP代码
Cpanel下Cron Jobs定时执行PHP的方法
这样就可以避免频繁调用生成判断页面了,只在需要执行的时候访问一次生成页面即可。
使用了cdn的网站需要注意的问题
鉴于现在很多网站都使用了cdn,如果不断自动生成首页可能导致首页为空的情况下被cdn抓取到导致首页是空内容,那么这样怎么解决呢。
编程网的方案:例如可以生成index_def.htm,然后通过程序判断内容是否有更新,内容是否不为空(内容一般大于30k),这样执行复制操作将index_def.htm复制一份为index.htm即可。
winddow服务器下可以使用vbscript因为比较强大,linux可以使用shell。
以上是“asp与php中如何定时生成页面”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网行业资讯频道!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341