原文链接:http://www.cnblogs.com/shuchao/archive/2009/09/17/url-normalization.html
URL规范化(url normalization)其 实就是一个标准化URL的过程,其实也就是将一个URL转化为一个符合规范的等价URL(如http://www.cnblogs.com /shuchao转化为http://www.cnblogs.com/shuchao/),这样程序可以确定这两个URL是等价的。
URL规范化用于搜索引擎可以减少对页面的重复索引,同时也可以减少爬虫的重复抓取。浏览器端识别用户是否访问过一个URL也需要使用URL规范化。
protocol :// hostname[:port] / path / [;parameters][?query]#fragment
协议://主机名[:端口]/ 路径/[:参数] [?查询]#Fragment
1 URL中多余的字符
1.1 子域名的URL中包含"www": "http://www.shuchao.cnblogs.com/"
1.2 含有默认端口: "http://www.cnblogs.com:80/shuchao/"
1.3 松散的URL: "http://www.chapters.indigo.ca/books/amazon-sucks-donkey-balls/9780470170779-item.html"
1.4 多余默认文件名index.html,default.aspx等:"http://www.cnblogs.com/shuchao/index.html"
1.5文件路径中
(1) 多余的"/":"http://www.cnblogs.com/shuchao//"
(2)多余的点修饰串:"x/y/z/http://www.cnblogs.com/a/b/http://www.cnblogs.com/../page.html"
1.6 查询串中多余的
(1) ? (空查询串):http://www.cnblogs.com/shuchao?
(2) &
(3) 无用的查询变量:http://www.example.com/display?id=123&fake=fake
2 URL缺少字符串
2.1 缺少"/":"http://www.cnblogs.com/shuchao"
2.2 查询串缺少名称或者值:"http://www.example.com/display?id=" 或者 "http://www.example.com/display?=123"
3 其他不规范的URL
3.1 "http://shuchao.cnblogs.com/" 与 "http://www.cnblogs.com/shuchao/"其实是相同的内容
3.2 使用IP代替域名
3.3 含有扩充字符(extended characters),大小写敏感("http://www.google.cn/Intl/zh-CN/about.html" 和"http://www.google.cn/intl/zh-CN/about.html")
3.4 "+"和"%20"混用
3.5 查询变量顺序混乱:"http://www.example.com/test.aspx?bar=1&a=test"
3.6 含临时的状态变量:http://www.example.com/test?back=/prevpage.aspx
1.URL协议名和主机名小写化
HTTP://WWW.EXAMPLE.com/test -> http://www.example.com/test
2.escape序列转化为大写,因为escape序列大小敏感
%3a ->%3A
3.删除Fragment(#)
http://www.example.com/test/index.html#seo -> http://www.example.com/test/index.html
4.删除空查询串的'?'
http://www.example.com/test? -> http://www.example.com/test
5.删除默认后缀
http://www.example.com/test/index.html -> http://www.example.com/test/
6.删除多余的点修复符
http://www.example.com/../a/b/../c/./d.html -> http://www.example.com/a/c/d.html
7.删除多余的"www"
http://www.test.example.com/ -> http://test.example.com/
8.对查询变量排序
http://www.example.com/test?id=123&fakefoo=fakebar → http://www.example.com/test?id=123 \
9.删除取默认值的变量
http://www.example.com/test?id=&sort=ascending → http://www.example.com/test
10.删除多余的查询串,如?,&
http://www.example.com/test? → http://www.example.com/test
11.Dust 规则(Schonfeld 等人提出的启发式方法)
http://www.example.com/test?id=123 -> http://www.example.com/test_123
不规范的URL会造成网站很多重复的URL,导致爬虫重复抓取同一内容,影响网站有效的内容被抓取,同时也就影响索引。
多个不规范URL造成PR稀疏,本来流向同一页面的PR,结果造成了流向多个不规范的URL。
还有一个用户体验问题,复杂或者不规范的URL容易使用户对网站造成不良印象。
Google管理员增加了URL规范化的工具,可以删除URL中无用的参数。
相关推荐
在` normalization-request-uri-master `这个项目中,可能包含的是一个示例或库,展示了如何在Laravel 4中实现请求URI的规范化。开发者可能通过分析和修改这个代码来学习Laravel的内部工作原理,或者为自己的应用...
将扫描的人脸或其他的 规范化 如 电子护照的水平 人脸规范化 face normalization人脸规范化 face normalization人脸规范化 face normalization
正规化(Normalization)和反规范化(Denormalization)是数据库设计中两个重要概念,用于优化数据结构和提高数据库性能。 正规化(Normalization)是将数据库中的表结构设计为满足关系型数据库理论规范的过程。它...
标题 "apacheds-interceptors-normalization-2.0.0-M7.zip" 暗示了这是一个关于Apache Directory Server(ApacheDS)的拦截器和规范化模块的版本2.0.0-M7。ApacheDS是一个开源的轻量级目录访问协议(LDAP)服务器,...
Batch_Normalization_Accelerating_Deep_Network_Training_by_Reducing_Internal_Covariate_Shift.md 阅读笔记
规范化网址 URL 当您需要显示,存储,重复数据删除,排序,比较等URL时很有用。 安装 $ npm install normalize-url 如果需要在浏览器中使用它,请使用版本4: npm i normalize-url@4 用法 const normalizeUrl = ...
4. 结果展示:可能包括预测结果与实际值的比较,以及一些可视化图表。 LSTM网络在时间序列预测中的核心概念包括: - 输入门、遗忘门和输出门:这三者共同决定了LSTM如何存储、更新和输出其内部状态,以保持和利用...
Batch Normalization(批归一化)是一种常用的正则化技术,通过规范化神经网络层的输入,可以减少内部协变量位移,加速训练过程并提高模型性能。在单GPU环境下,批归一化的计算相对简单,但在多GPU环境下,由于数据...
在Android应用开发中,"Normalization-Android.rar" 文件可能是一个包含源代码和资源的压缩包,用于演示如何在混合(Hybrid)环境中实现Android应用的数据采集和上传功能,特别是在Hbuilder这个集成开发环境下。...
Text-to-speech synthesis text normalization data, from Sproat & Jaitly 2016 Google Text Normalization Challenge.xlsx
keras 实现组规范化。 吴宇新和何开明 [WIP警报] 该存储库仍在进行中。 组标准化的功能尚未完全检查。 实现可能是错误的。 用法 from GroupNormalization import GroupNormalization # GroupNormalization(axis...
《PyPI官网下载:radiometric_normalization-0.1.161.tar.gz——Python库在分布式环境中的应用》 PyPI(Python Package Index)是Python开发者的重要资源库,它为全球的Python开发者提供了一个发布、查找和安装...
在"ER-Diagrams-and-Normalization-master"这个资源包中,很可能是包含了各种ER图实例和对应的数据库规范化练习。这些练习可能涉及到设计不同的实体,如用户、订单、产品等,并要求将它们转换为规范化的表格形式。...
数据预处理是机器学习和数据分析过程中的重要环节,其中数据的规范化和标准化是两个关键步骤。本主题将深入探讨这两个概念,并使用Python编程语言以及Scikit-Learn库进行实践操作。 1. 数据规范化(Min-Max Scaling...
### 归一化(Normalization) #### 知识点概览 1. **归一化的概念与作用** 2. **批量归一化(Batch Normalization)** - 实现原理 - 参数调整与优化 - 应用场景与限制 3. **层归一化(Layer Normalization)** 4. **...
资源分类:Python库 所属语言:Python 资源全名:radiometric_normalization-0.1.89.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
数据归一化是一种重要的预处理技术,在数据分析、机器学习和深度学习等领域中广泛应用。...通过理解和应用MATLAB中的数据归一化,我们可以有效地处理各种规模和范围的数据,为后续的数据分析任务打下坚实的基础。
数据规范化和实体关系图(ER图)是数据库设计中的核心概念,它们对于构建高效、可靠且易于维护的数据存储系统至关重要。下面将详细解释这两个概念及其在数据库设计中的应用。 1. 数据规范化: 数据规范化是一种优化...
通过这些知识点的展开,研究者们可以更好地理解正交权重归一化在深度神经网络训练中的潜在价值及其优化效果,这不仅丰富了深度学习领域中模型训练的理论基础,还提供了实用的方法改进现有网络架构的性能。