导读
在上一篇:免插件生成wordpress站点地图,附sitemap源代码(上篇) 文章中,已经通过php编写的代码获得了站点地图信息,但最终的文件是以".php"格式结尾的,在百度SEO提交中并不合适。在各大引擎中,站点地图(sitemap)一般都是以".txt"或 ".xml"文件格式进行提交的。
百度SEO中,站点地图(sitemap)文件提交详情看:百度站点地图提交说明
生成站点地图(sitemap)
这里我们将利用上节中编写的“sitemap.php”文件来生成需要的“sitemap.txt”或“sitemap.xml”格式文件。
生成的方法有很多,这里只介绍其中一种,就是通过“wget”工具来请求(下载)sitemap.php文件产生的内容,最终保存为需要的“sitemap.txt”或“sitemap.xml”文件。
注:保存的文件需要存放在服务器目录上,因为百度蜘蛛需要抓取这个文件,否则无效。
生成站点地图(sitemap)需要注意哪些问题?
1、因为我们的网站内容是不断更新的,所以站点地图(sitemap)文件也需要按一定的周期进行更新,确保蜘蛛能抓取到最新的内容,知道网站有内容更新,应及时收录。
2、在请求(生成)这个文件时,如果站点内容多,请求更新频率高,那么就会占用大量的服务器资源,所以我们一般选择每天更新一次,而且选择在夜间进行更新。
那么问题来了,谁会每天大半夜的循环做这样的事啊,对吧!这个问题非常好解决,计算机做循环的事情最在行了,我们只需要添加一个定时任务就好了。
下面直接来操作,通过【“定时任务”+“wget”】的结合,生成需要的站点地图文件:
使用文本编辑工具,打开系统下的/etc/crontab文件,在文件中追加以下内容即可!
# 设定每天凌晨2点在'taitaiblog.com'网站根目录生成一个sitemap.xml
0 2 * * * root wget -O /home/www/你的网站地址/sitemap.xml http://你的网站地址/sitemap.php >/dev/null 2>&1
Tips:
1、crontab文件,是linux内核系统的一个系统调度维护进程,关于相关参数配置,您可搜索其它资源,或留意泰泰的其它文章。
2、“/home/www/你的网站地址/sitemap.xml”是你要存放文件的位置(一般放在网站根目录),同时指定为“.xml”格式文件。
3、“http://你的网站地址/sitemap.php”是你要请求的sitemap.php文件。
提交站点地图(sitemap)
上一步中,已经生成了站点地图(sitemap),此时,只需在百度站长的“链接提交”中,提交这个文件即可,百度蜘蛛会根据自身安排,不定时的来抓取我们站点的站点地图信息。
安全问题
1、我们的站点地图(sitemap)是用php编写的,,属于可执行文件,为防止恶意提交请求,我们可以将它放置在其它可访问(执行)的目录或者将其重命名一些冷门的名字。如果你做了以上修改,紧接着也需要变更定时中请求的链接。
2、站点地图(sitemap)对于网络爬虫来说实在是太有用了,一旦被获取,轻松就可以把我们网站的资源翻个遍,实在百害而无一利,所以泰泰建议大家把最终生成的站点地图(sitemap)文件,命名为一些其它的名称,此时在百度提交中只需稍稍修改即可!