一、PHP 代码
二、设置伪静态
nginx添加如下伪静态规则:
rewrite ^/sitemap.xml$ /sitemap.php last;
apache下的规则:
RewriteEngine On RewriteBase / RewriteRule ^sitemap.xml$ sitemap.php
三、纯静态
Linux 定时任务+wget 定时生成 sitemap.xml
具体实现:将 sitemap.php 放到某个不为人知的目录,然后定时使用 wget 去请求这个文件,并将数据保存为 sitemap.xml 存放到网站根目录就可以了!比如:
如果是启用了 https 的站点,需要加入 --no-check-certificate 的选项 #每天在网站根目录生成一个sitemap.xml diypath为sitemap.php的实际位置(针对https网站) 0 1 * * * wget -O /home/wwwroot/sea.shrimsea.com/sitemap.xml --no-check-certificate https://sea.shrimsea.com/sitemap.php >/dev/null 2>&1
0 1 * * * wget https://sea.shrimsea.com/sitemap.xml.php -O /home/wwwroot/sea.shrimsea.com/sitemap.xml –no-check-certificate >/dev/null 2>&1