当前位置: 首页 > news >正文

php 实现时时更新地图,PHP实现隔15分钟自动更新网站地图功能

PHP实现隔15分钟自动更新网站地图功能

发布时间:2020-05-22 14:36:46

来源:亿速云

阅读:168

作者:鸽子

最近在弄一个短网址,自己写的代码。锻炼一下自己。在做html网站地图这块,想着把所有生成的短连接都展示出来,方便收录。就写了一个sitemap.php,后来发现,如果以后人流量大或者数据过多的话,服务器负担就会特别重,假如有10w条数据,每个人访问的时候都会从数据库索引这10w条数据,一秒钟有100个人访问,服务器根本负担不过来。然后就萌生了生成html地图这个想法。

原理:

需要三个文件:sitemap.html (这个文件为系统自动生成,sitemap.php的克隆版)

sitemap.php (主要页面,决定页面的样式等,完全=sitemap.html)

timeSitemap.php (为更新程序,生成html页面。可在监控宝设置监控。)

sitemap.php为页面文件,sitemap.html为sitemap.php的克隆版,监控宝设置定时监控timeSitemap.php文件,实现每15分钟生成网站地图,当然,频率是按照监控宝的监控频率来决定,如果地图生成失败,会返回404,监控宝会报警。sitemap.xml同理

下面共享代码(用使用的mysql查询等类为自己简单封装的数据库类,这里就不展示了):

sitemap.php<?php

/*

@ sitemap html版地图

*/

// 引入数据库操作类

require_once 'c/class.class.php';

// 引入系统参数

$config = require 'c/config.php';

?>

网站地图 - <?php echo $config['web_title']; ?>

.table tr {

text-align: center;

}

a {

display: inline-block;

padding: 10px;

}

//

$cons = new con();

$consSql = "select * from urls order by id desc";

$consQuery = $cons->query($consSql);

// >> 总数量

$consNum = mysql_num_rows($consQuery);

?>


共<?php echo $consNum; ?>条数据

本页面每15分钟更新一次

本站链接:bba.fun短网址api接口网站地图

生成链接:

// >> 显示总数量

echo "";

// >> 开始循环取出

while($rows = mysql_fetch_array($consQuery)){

echo "".$rows['short_url']."";

}

?>

2017© <?php echo $config['web_title']; ?>

timeSitemap.php<?php

/*

@ 定时更新网站地图

*/

// 定义获取的url

$url = "http://bba.fun/sitemap.php";

// 定网站地图名字

$name = "sitemap.html";

// 获取源码

$html = file_get_contents($url);

// 写入html

$write = file_put_contents($name,$html);

if($write){

header("HTTP/1.1 200");

}else {

header("HTTP/1.1 404");

}

?>


http://www.taodudu.cc/news/show-647735.html

相关文章:

  • 【physx/wasm】在physx中添加自定义接口并重新编译wasm
  • excel---常用操作
  • Lora训练Windows[笔记]
  • linux基础指令讲解(ls、pwd、cd、touch、mkdir)
  • InnoDB 事务处理机制
  • 启明云端ESP32 C3 模组WT32C3通过 MQTT 连接 AWS
  • php中显示不出图像,php – 无法显示图像,因为它包含错误
  • java后台日期怎么去重,JAVA后台业务实现去重
  • php stripos 返回值,php函数stripos详解
  • java中gc的认识,java JVM GC 笔记(个人对GC 或JVM 的了解)
  • java libpcap,Linux下编译安装libpcap
  • 网页实现人脸识别PHP,奇思妙想-用HTML5进行人脸识别
  • 文件包含漏洞不能包含php,ThinkPHP5漏洞分析之文件包含
  • php对应哪个oracle版本,Oracle 版本说明
  • php 主页子标题修改,关于有部分用户默认PC主页大标题标签修改无效的答疑.
  • 基于matlab的智能天线波束方向图仿真,基于MATLAB的智能天线波束方向图仿真
  • python中xlwt的局限,Python xlwt 生成Excel和设置特定单元格不可编辑
  • angularjs 导出excel php,AngularJS 导出Excel指令
  • php 连续点击事件,javascript设置连续两次点击按钮时间间隔的方法_javascript技巧...
  • oracle10g数据库热备份,Oracle10g数据库冷备份脚本文件
  • Oracle创建序列的sql语句,【Oracle学习】之 序列(Sequence)
  • cssd拉起oracle,oracle rac /etc/init.d/init.cssd startcheck
  • oracle dg状态查询,oracle dg状态检查及相关命令
  • keep alive PHP,vue中keep-alive使用方法详解
  • oracle库缓存锁,Laravel 7.10 中的数据库缓存锁定和并发限制
  • 源码时代php中级项目,PHP学科项目评比圆满结束
  • linux 进程管理 ppt,linux操作系统-进程管理和打印管理.ppt
  • linux c编程头文件,如何在Linux中找到C编程语言的头文件?
  • linux 脚本中除法运算符,Linux中Shell的算数运算符和位运算符用法笔记
  • linux程序获取透传参数,Linux内核中TCP SACK处理流程分析
  • Linux线程时间片如何修改,请教如何修改线程时间片
  • 安卓虚拟linux系统教程,在Linux上模拟Android应用程序的3种方法 | MOS86
  • linux中断程序快捷键,linux命令行快捷键
  • linux用户命令权限管理,Linux命令-用户、权限管理
  • linux缓存文件地址,如何遍历linux内核中的文件地址空间的页面缓存树(基数树)
  • 成绩排序的c语言算法,成绩排序系统(练习排序算法和复习C语言)