google自动会在根目录下查找这个sitemap.xml文件。
但是!我的N个网站都在同一个根目录下,我是自动根据域名来判断返回对应的网站的,其他的php文件倒好说,可以做判断分析,但是这个sitemap.xml是静态文件,我会编写代码自动生成合适的xml文件,但是google直接就去抓取sitemap.xml,根本没有给我做判断的机会啊。
我该怎么做呢?

解决方案 »

  1.   

    google bot不是每时每刻都去检查你的sitemap.xml的,一般都有个时间间隔就等于你写个txt放在某个地方,bot去取一次
    然后你的网站内容更新了,把这个txt重写覆盖,过一段时间,bot再去取一次,自然就知道你更新了
    这个某种程度跟rss相似,只是书写规范不同你首先了解一下sitemap.xml里面的书写规范,我觉得你还没了解这点
      

  2.   

    google sitemap 有为多个网站创建站点地图  可以看下相关说明,应该有解决方法
      

  3.   

    这个知道。
    因为特殊的原因,我的多个网站共同使用同一个根目录。
    在我之前的几年实践当中,我的N个网站各自适用不同的根目录,所以我总是为每一个网站自动动态生成sitemap.xml,并且一直以来非常好使。
    只是现在情况不同了,N个网站公用同一个根目录,所以我的苦恼是,对于sitemap.xml这样的文件,没法儿通过服务端脚本去解析,就同一个根目录下,只能有一个sitemap.xml。谢谢。
      

  4.   

    索引文件我了解过,但是同样不符合我的需求,因为,各个网站之间在逻辑上是完全独立的,
    我不能让别人透过sitemap索引文件而反推出我的其他网站,这是基于商业机密的考虑。
      

  5.   

    我的设想是,当有请求访问http://www.host.com/sitemap.xml时,实际上这个文件并不存在,但是应该有一种机制能接管这个请求,并用服务端脚本处理并返回一个合适的sitemap.xml内容。而不是纠缠于爬虫访问sitemap的原理。
      

  6.   

    这个……google bot应该也是http方式请求的吧?
    把你的sitemap.xml按php解析,根据google bot请求的域名,指向不同的xmlgoogle bot可以检测redir,所以不要单纯用header指向,而是用fopen什么的读入再原文输出这样可以么?
      

  7.   

    这其实不是个问题,我做过很长时间SEO你可以在你的根目录下每个网站生成不同名的sitemapsitemap1.xml
    sitemap2.xml然后你去google管理员后台对应的网站提交一下这个sitemap就行了google又不是主动猜测你的sitemap文件名的,是你给它指引的你也可以在robots.txt里指明一下网站的sitemap文件(不过你的这种情况去管理员后台提交一下才有用)
      

  8.   

       除非希望自己的某些页面不被引擎收录,一般都用不到robots.txt吧!