114

我正在为客户部署一个替换站点,但他们不希望所有旧页面都以 404 结尾。保持旧的 URL 结构是不可能的,因为它很可怕。

所以我正在编写一个 404 处理程序,它应该寻找一个被请求的旧页面并永久重定向到新页面。问题是,我需要所有旧页面 URL 的列表。

我可以手动执行此操作,但如果有任何应用程序可以为我提供刚刚给出主页的相对 URL(例如:/page/path,而不是 http:/.../page/path)URL,我会很感兴趣页。就像蜘蛛一样,但它不关心内容,只是寻找更深的页面。

4

8 回答 8

85

我并不是要回答我自己的问题,但我只是想运行一个站点地图生成器。第一个我发现http://www.xml-sitemaps.com有一个很好的文本输出。非常适合我的需要。

于 2009-05-13T12:26:03.097 回答
56

wget -r -l0 www.oldsite.com

我相信,然后find www.oldsite.com就会显示所有网址。

或者,只需在每个 404 请求上提供自定义的未找到页面!即,如果有人使用了错误的链接,他会得到页面告诉该页面没有找到,并就网站的内容做出一些提示。

于 2009-05-13T12:28:39.690 回答
24

这是站点地图生成器的列表(显然您可以从中获取站点的 URL 列表):http ://code.google.com/p/sitemap-generators/wiki/SitemapGenerators

网站地图生成器

以下是生成或维护 XML Sitemaps 格式文件的工具的链接,该格式是在 sitemaps.org 上定义的开放标准,并受到 Ask、Google、Microsoft Live Search 和 Yahoo! 等搜索引擎的支持。站点地图文件通常包含网站上的 URL 集合以及这些 URL 的一些元数据。以下工具通常会生成“网络类型”的 XML 站点地图和 URL 列表文件(有些可能还支持其他格式)。

请注意:Google 尚未测试或验证本网站上列出的第三方软件的功能或安全性。如有任何关于软件的问题,请直接联系软件作者。我们希望您喜欢这些工具!

服务器端程序

  • Enarion phpSitemapsNG (PHP)
  • Google 站点地图生成器(Linux/Windows,32/64 位,开源)
  • Outil en PHP(法语,PHP)
  • Perl 站点地图生成器 (Perl)
  • Python 站点地图生成器 (Python)
  • 简单站点地图 (PHP)
  • SiteMap XML 动态站点地图生成器 (PHP) $
  • OS/2 的站点地图生成器(REXX 脚本)
  • XML 站点地图生成器 (PHP) $

CMS 和其他插件:

  • ASP.NET - Sitemaps.Net
  • DotClear(西班牙语)
  • 点清除 (2)
  • 德鲁巴
  • 电子商务模板 (PHP) $
  • 电子商务模板(PHP 或 ASP)$
  • 生活类型
  • MediaWiki 站点地图生成器
  • mnoGoSearch
  • 操作系统商务
  • php网站
  • 克隆
  • RapidWeaver
  • 文本模式
  • 电子公告
  • 维卡维基 (PHP)
  • WordPress

可下载工具

  • GSiteCrawler (Windows)
  • GWebCrawler & Sitemap Creator (Windows)
  • G-Mapper (Windows)
  • Inspyder Sitemap Creator (Windows) $
  • IntelliMapper (Windows) $
  • Microsys A1 站点地图生成器 (Windows) $
  • Rage Google Sitemap Automator $ (OS-X)
  • Screaming Frog SEO Spider 和站点地图生成器 (Windows/Mac) $
  • 站点地图专业版 (Windows) $
  • 站点地图编写器 (Windows) $
  • DevIntelligence 的站点地图生成器 (Windows)
  • Sorrowmans 站点地图工具 (Windows)
  • 站点映射器 (Windows) $
  • Vigos Gsitemap (Windows)
  • 视觉 SEO 工作室 (Windows)
  • WebDesignPros 站点地图生成器(Java Webstart 应用程序)
  • 网络灯 (Windows/Mac) $
  • WonderWebWare 站点地图生成器 (Windows)

在线发电机/服务

  • AuditMyPc.com 站点地图生成器
  • 自动地图
  • 自动站点地图 $
  • Enarion phpSitemapsNG
  • 免费站点地图生成器
  • Neuroticweb.com 站点地图生成器
  • ROR 站点地图生成器
  • ScriptSocket 站点地图生成器
  • SeoUtility 站点地图生成器(意大利语)
  • 站点地图文档
  • 站点地图
  • 网站地图提交
  • 智能 IT 咨询 Google 站点地图 XML 验证器
  • XML 站点地图生成器
  • XML 站点地图生成器

带有集成站点地图生成器的 CMS

  • 混凝土5

Google 新闻站点地图生成器 以下插件允许发布商更新 Google 新闻站点地图文件,这是我们在帮助中心中描述的 sitemaps.org 协议的一种变体。除了站点地图文件的正常属性外,Google 新闻站点地图还允许发布者描述他们发布的内容类型,以及指定单个文章的访问级​​别。有关 Google 新闻的更多信息,请访问我们的帮助中心和帮助论坛。

  • WordPress 谷歌新闻插件

代码片段/库

  • ASP 脚本
  • Emacs Lisp 脚本
  • Java 库
  • Perl 脚本
  • PHP 类
  • PHP 生成器脚本

如果您认为出于正当理由应该添加或删除某个工具,请在网站管理员帮助论坛中发表评论。

于 2012-01-31T20:32:35.423 回答
6

我发现的最好的是http://www.auditmypc.com/xml-sitemap.asp,它使用 Java,对页面没有限制,甚至可以将结果导出为原始 URL 列表。

它还使用会话,因此如果您使用的是 CMS,请确保在运行爬网之前已注销。

于 2014-06-26T13:20:27.483 回答
3

因此,在理想情况下,您应该为网站中的所有页面制定规范。您还将拥有一个测试基础架构,可以访问您的所有页面以对其进行测试。

你可能不在一个理想的世界里。为什么不这样做……?

  1. 在众所周知的旧 URL 和新 URL 之间创建映射。当您看到旧网址时重定向。我可能会考虑提出“此页面已移动,它的新网址是 XXX,您很快就会被重定向”。

  2. 如果您没有映射,请显示“抱歉 - 此页面已移动。这是指向主页的链接”消息并根据需要重定向它们。

  3. 记录所有重定向——尤其是那些没有映射的。随着时间的推移,为重要的页面添加映射。

于 2009-05-13T12:28:00.567 回答
3

来自 linux 机器的 wget 也可能是一个不错的选择,因为可以切换到蜘蛛并更改其输出。

编辑:wget 在 Windows 上也可用:http: //gnuwin32.sourceforge.net/packages/wget.htm

于 2009-05-13T12:28:23.187 回答
1

编写一个蜘蛛,它从磁盘读取每个 html 并输出“a”元素的每个“href”属性(可以用解析器完成)。请记住哪些链接属于某个页面(这是 MultiMap 数据结构的常见任务)。在此之后,您可以生成一个映射文件,作为 404 处理程序的输入。

于 2009-05-13T12:27:13.157 回答
1

我会研究任何数量的在线站点地图生成工具。就我个人而言,我过去使用过这个(基于 java 的),但如果你在谷歌上搜索“站点地图生成器”,我相信你会找到很多不同的选项。

于 2009-05-13T12:29:22.187 回答