最近用tp5做了个站
http://www.doc5.cn
多库文档网,新站最头疼的事情莫过于搜索引擎的收录了,没办法不管sitemap提交有用没用都要死马当活马医不是,于是各个站长平台全部注册了一通,总的来说百度还算是最够意思的,sitemap的提交限制较少,其他搜索引擎就不说了有的甚至还要邀请才能提交。废话少说第一步就是要制作sitemap。这个非常简单从百度站长后台找到模板直接制作就好了。
sitemap的规范是单个文件最多包含50000个URL,超过了怎么办,当然是使用分页制作多个sitemap了。当然有很多变态的网站文章数数以亿计,光sitemap文件就要成百上千,这要是一个个提交累死宝宝了,怎么办呢?这时候我们需要用到sitemap索引文件,就是用一个sitemap把所有要提交的sitemap文件都包含了,这样提交一个文件就可以。
好了这样索引文件和sitemap文件都制作好了,是不是就大功告成了呢。如果你这样认为你就太傻太天真了。我们的噩梦才刚刚开始,首先你是新站的话是没有权限提交索引文件的,当然新站也用不到索引文件毕竟内容也不多,然后百度会解析你提交的sitemap,一开始为了省事我是动态生成sitemap的,由于文章数较多每次查询输出都要好久,经常出现抓取超时,没办法赶紧生成静态文件吧。终于不超时了,抓狂的事情又出现了解析错误!!!由于我的
http://www.doc5.cn
文章里面经常会有特殊字符,百度解析的时候总是报错,没办法为了一劳永逸我把所有的特殊字符全部替换掉,
再次提交终于解析正确了,剩下的就是等待百度抓去了,打开nginx日志望眼欲穿的等待,每次看到
的身影心中的激动无语言表。然后惊奇的发现
360也来了,现在就耐心的等待收录吧
- <?xml version="1.0" encoding="UTF-8"?>
- <urlset>
- {volist name="lists" id='row'}
- <url>
- <loc>{:url('index/content',['path'=>$row->file_path,'id'=>$row['id']],true,true)}</loc>
- <lastmod>{$row.ctime|date="Y-m-d",###}</lastmod>
- <changefreq>always</changefreq>
- <priority>0.5</priority>
- <data>
- <display>
- <title>{$row.title|preg_replace='/[\\x00-\\x08\\x0b-\\x0c\\x0e-\\x1f&><"\\']/','',###}</title>
- <content>{$row.description|preg_replace='/[\\x00-\\x08\\x0b-\\x0c\\x0e-\\x1f&><"\\']/','',###}</content>
- <tag>{$row.keywords|preg_replace='/[\\x00-\\x08\\x0b-\\x0c\\x0e-\\x1f&><"\\']/','',###}</tag>
- <pubTime>{$row.ctime|date="Y-m-d H:i:s",###}</pubTime>
- <thumbnail loc="http://www.doc5.cn/static/article/images/{$row.cover|trim}.png"/>
- </display>
- </data>
- </url>
- {/volist}
- </urlset>
复制代码
- <?xml version="1.0" encoding="UTF-8"?>
- <sitemapindex xmlns="http://www.google.com/schemas/sitemap/0.84">
- {volist name="pages" id="row"}
- <sitemap>
- <loc>{:url('index/sitemap',['p'=>$i],true,true)}</loc>
- <lastmod>{$row.ctime|date="Y-m-d H:i:s",###}</lastmod>
- </sitemap>
- {/volist}
- </sitemapindex>
复制代码
- {$row.title|preg_replace='/[\\x00-\\x08\\x0b-\\x0c\\x0e-\\x1f&><"\\']/','',###}
复制代码
- "Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)"
复制代码
- "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; MDDR; .NET4.0C; .NET4.0E; .NET CLR 1.1.4322; Tablet PC 2.0) 360Spider"
复制代码