Xenforo1.4版中,加入了sitemap网站地图的生成功能,设置好后会按计划任务生产网站地址,输入网址/sitemap.php,就可以下载到网站生成的网址地图文件 XENFORO生成的网站中,其中lastmod地段,使用了W3C的标准格式,含有精确的日期及时间,这样生成的sitemap.xml ,GOOGLE可以正常识别,但提交到百度后,出现错误,不能正常识别,提示有无效的URL,后经过修改解决如下: 使用EDITPLUS打开文件:library/XenForo/Model/Sitemap.php 找到:$content .= '<lastmod>' . gmdate(DateTime::W3C, $result['lastmod']) . '</lastmod>'; 更改为:$content .= '<lastmod>' . date('Y-m-d', $result['lastmod']) . '</lastmod>'; 找到:$output .= "\t" . '<sitemap><loc>' . htmlspecialchars($url) . '</loc><lastmod>' . gmdate(DateTime::W3C, $sitemap['complete_date']) . '</lastmod></sitemap>' . "\n"; 更改为:$output .= "\t" . '<sitemap><loc>' . htmlspecialchars($url) . '</loc><lastmod>' . date('Y-m-d', $sitemap['complete_date']) . '</lastmod></sitemap>' . "\n"; 保存,进入后台,重建缓存,重新生产站点地图即可
目前看来好像是有问题的 因为这样提交sitemap.php还是不行,必须执行sitemap.php后,下载到的XML,直接提交这个XML才可以解析 以前使用IPB,提交压缩后的GZ文件可以的,但是XENFORO不行,怪事了
写了一个这样的地址,还是不行哦。可以直接下载sitemap-1.xml.gz了,但是百度仍然不行,主要是sitemap.php里生成的链接是动态的。你是怎么解决的?谢谢。 location / { try_files $uri $uri/ /index.php?$uri&$args; rewrite sitemap-([0-9]+).xml.gz$ /sitemap.php?c=$1 permanent; index index.php index.html; }