草庐IT

mod-rewrite - mod_rewrite 和冗余/旧 url,需要一些 SEO 最佳实践

coder 2024-02-28 原文

看看谷歌目前如何看待我们的网站,并得出结论...... 基本上,我们使用 URL 重写的沼泽标准结构来使它们看起来对 SEO 友好。

例如,产品 URL 的形式为 any string_([0-9]).html 等等。当然,这允许我们在产品 ID 之前链接到我们想要的任何内容……我们已经完成了。过去,产品页面是 Product_Name_79.html,然后变成了 Brand_Name_Product_Name_79.html。 apache 并不真正关心,在任何一种情况下都会传递 id 79。然而,谷歌现在有这个产品的 2 个版本缓存在不同的 URL 下——这不是一件好事,因为它继续到达第一个 URL 并抓取它。

同样的事情也适用于我们对品牌和类别的重写规则,其中一些已被删除,一些已被修改。

site:domain 中有超过 11k 个 url,而我们的站点地图只有 5.8k 个。你如何防止蜘蛛获取你不再链接到的旧版本的 url(考虑到这不是一个手动过程,而且通常这样的 url 可能是非常动态的)。

例如,Mens_Merrell_Trail_Running_Shoes__50-100__10____024/merrell 品牌的动态 URL,按价格在 trail running shoes 中的商品缩小范围50 和 100 以及 10 码,性别设置为 男装

如果我们决定 nofollow 任何大小和货币过滤器 url,谷歌仍然能够通过其旧缓存访问它们...

禁止特定类型网址的最佳做法是什么?由于上面的组合几乎是无限的,我无法制作一个列表,而且它肯定不能根据谷歌历史上可能为我们保留的品牌和类别来回溯。

当应用这样的过滤器时,我们是否应该添加 noindex ?我们应该将它们导出到 robots.txt 吗?什么都不做,希望谷歌停止返回?

换句话说,我们有 2600 个产品页面 url 现在是多余的/禁用的,您会如何处理它们?重定向到主页,品牌页面,404,什么都不做?

谢谢你的建议

最佳答案

我认为您正在寻找 rel="canonical" ,谷歌应该开始忽略你的链接,如果他们真的没有链接。您可以使用如下工具检查任何传入链接:http://www.seomoz.org/linkscape .

此外,如果您的旧网址匹配(或不匹配)一致的模式,您可以在 apache 中为匹配旧模式或不匹配新模式的页面设置 301 重定向...

希望这对您有所帮助!

关于mod-rewrite - mod_rewrite 和冗余/旧 url,需要一些 SEO 最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3076066/

有关mod-rewrite - mod_rewrite 和冗余/旧 url,需要一些 SEO 最佳实践的更多相关文章

  1. ruby-on-rails - 使用 Ruby on Rails 进行自动化测试 - 最佳实践 - 2

    很好奇,就使用ruby​​onrails自动化单元测试而言,你们正在做什么?您是否创建了一个脚本来在cron中运行rake作业并将结果邮寄给您?git中的预提交Hook?只是手动调用?我完全理解测试,但想知道在错误发生之前捕获错误的最佳实践是什么。让我们理所当然地认为测试本身是完美无缺的,并且可以正常工作。下一步是什么以确保他们在正确的时间将可能有害的结果传达给您? 最佳答案 不确定您到底想听什么,但是有几个级别的自动代码库控制:在处理某项功能时,您可以使用类似autotest的内容获得关于哪些有效,哪些无效的即时反馈。要确保您的提

  2. ruby - 我需要将 Bundler 本身添加到 Gemfile 中吗? - 2

    当我使用Bundler时,是否需要在我的Gemfile中将其列为依赖项?毕竟,我的代码中有些地方需要它。例如,当我进行Bundler设置时:require"bundler/setup" 最佳答案 没有。您可以尝试,但首先您必须用鞋带将自己抬离地面。 关于ruby-我需要将Bundler本身添加到Gemfile中吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/4758609/

  3. ruby-on-rails - rails : save file from URL and save it to Amazon S3 - 2

    从给定URL下载文件并立即将其上传到AmazonS3的更直接的方法是什么(+将有关文件的一些信息保存到数据库中,例如名称、大小等)?现在,我既不使用Paperclip,也不使用Carrierwave。谢谢 最佳答案 简单明了:require'open-uri'require's3'amazon=S3::Service.new(access_key_id:'KEY',secret_access_key:'KEY')bucket=amazon.buckets.find('image_storage')url='http://www.ex

  4. ruby - 如何使用 Ruby aws/s3 Gem 生成安全 URL 以从 s3 下载文件 - 2

    我正在编写一个小脚本来定位aws存储桶中的特定文件,并创建一个临时验证的url以发送给同事。(理想情况下,这将创建类似于在控制台上右键单击存储桶中的文件并复制链接地址的结果)。我研究过回形针,它似乎不符合这个标准,但我可能只是不知道它的全部功能。我尝试了以下方法:defauthenticated_url(file_name,bucket)AWS::S3::S3Object.url_for(file_name,bucket,:secure=>true,:expires=>20*60)end产生这种类型的结果:...-1.amazonaws.com/file_path/file.zip.A

  5. ruby - rspec 需要 .rspec 文件中的 spec_helper - 2

    我注意到像bundler这样的项目在每个specfile中执行requirespec_helper我还注意到rspec使用选项--require,它允许您在引导rspec时要求一个文件。您还可以将其添加到.rspec文件中,因此只要您运行不带参数的rspec就会添加它。使用上述方法有什么缺点可以解释为什么像bundler这样的项目选择在每个规范文件中都需要spec_helper吗? 最佳答案 我不在Bundler上工作,所以我不能直接谈论他们的做法。并非所有项目都checkin.rspec文件。原因是这个文件,通常按照当前的惯例,只

  6. ruby - 如何在 Lion 上安装 Xcode 4.6,需要用 RVM 升级 ruby - 2

    我实际上是在尝试使用RVM在我的OSX10.7.5上更新ruby,并在输入以下命令后:rvminstallruby我得到了以下回复:Searchingforbinaryrubies,thismighttakesometime.Checkingrequirementsforosx.Installingrequirementsforosx.Updatingsystem.......Errorrunning'requirements_osx_brew_update_systemruby-2.0.0-p247',pleaseread/Users/username/.rvm/log/138121

  7. ruby-on-rails - Ruby url 到 html 链接转换 - 2

    我正在使用Rails构建一个简单的聊天应用程序。当用户输入url时,我希望将其输出为html链接(即“url”)。我想知道在Ruby中是否有任何库或众所周知的方法可以做到这一点。如果没有,我有一些不错的正则表达式示例代码可以使用... 最佳答案 查看auto_linkRails提供的辅助方法。这会将所有URL和电子邮件地址变成可点击的链接(htmlanchor标记)。这是文档中的代码示例。auto_link("Gotohttp://www.rubyonrails.organdsayhellotodavid@loudthinking.

  8. ruby-on-rails - 如何生成传递一些自定义参数的 `link_to` URL? - 2

    我正在使用RubyonRails3.0.9,我想生成一个传递一些自定义参数的link_toURL。也就是说,有一个articles_path(www.my_web_site_name.com/articles)我想生成如下内容:link_to'Samplelinktitle',...#HereIshouldimplementthecode#=>'http://www.my_web_site_name.com/articles?param1=value1¶m2=value2&...我如何编写link_to语句“alàRubyonRailsWay”以实现该目的?如果我想通过传递一些

  9. ruby - 为什么在 ruby​​ 中创建 Rational 不需要新方法 - 2

    这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Rubysyntaxquestion:Rational(a,b)andRational.new!(a,b)我正在阅读ruby镐书,我对创建有理数的语法感到困惑。Rational(3,4)*Rational(1,2)产生=>3/8为什么Rational不需要new方法(我还注意到例如我可以在没有new方法的情况下创建字符串)?

  10. ruby - Rack:如何将 URL 存储为变量? - 2

    我正在编写一个简单的静态Rack应用程序。查看下面的config.ru代码:useRack::Static,:urls=>["/elements","/img","/pages","/users","/css","/js"],:root=>"archive"map'/'dorunProc.new{|env|[200,{'Content-Type'=>'text/html','Cache-Control'=>'public,max-age=6400'},File.open('archive/splash.html',File::RDONLY)]}endmap'/pages/search.

随机推荐