URL地址解析
在线URL地址解析工具,一键分解任意URL为20个结构化字段:Protocol协议、Username用户名、Password密码、Hostname主机名、Port端口、FullHost完整主机、UserInfo用户信息、Authority授权、Origin源、Domain域名、Subdomain子域名、TLD顶级域、Pathname路径、Directory目录、Filename文件名、Suffix后缀、Query查询串、Hash哈希、Fragment锚点、Resource资源定位符。支持带认证信息、端口号、多级子域、复杂路径的URL解析。
URL解析输入
解析结果(20个字段)
Protocol 协议
Username 用户名
Password 密码
Hostname 主机名
Port 端口
FullHost 完整主机
UserInfo 用户信息
Authority 授权
Origin 源
Domain 域名
Subdomain 子域名
TLD 顶级域
Pathname 路径
Directory 目录
Filename 文件名
Suffix 后缀
Query 查询串
Hash 哈希
Fragment 锚点
Resource 资源定位符
功能特性
一键解析
粘贴任意URL地址,点击解析即可自动拆分20个结构化字段,直观展示URL各组成部分。
20个字段
全面覆盖Protocol、Host、Port、Domain、Subdomain、TLD、Path、Query、Hash等RFC 3986规范字段。
认证信息解析
支持解析URL中嵌入的用户名和密码(user:pass@host),方便调试带Basic Auth的接口地址。
子域名智能拆分
自动识别多级子域名(如 a.b.c.example.com),拆分出Domain主域名与Subdomain子域部分。
字段独立复制
每个解析结果字段均支持一键复制到剪贴板,方便提取Protocol、Host、Query等部分用于代码中。
安全可靠
使用.NET原生Uri类按RFC标准严格解析,不会修改或存储用户输入的URL地址,保障隐私安全。
使用说明
基本操作
- 在输入框中粘贴或输入完整的URL地址(必须包含协议头,如
https://或http://)。 - 点击「解析URL」按钮,工具将调用后端API使用.NET Uri类按RFC 3986标准进行解析。
- 解析完成后,20个字段将以卡片网格形式展示,每个字段右上角支持一键复制。
- 点击「示例URL」可快速载入带认证信息、端口、子域、多级路径、查询串和锚点的完整示例。
URL结构说明
标准URL格式:protocol://[user:password@]hostname[:port][/path][?query][#fragment]
- 协议层:
Protocol(如 https:)+Origin(https://host:port)+Authority(user@host:port)。 - 认证层:
UserInfo(user:pass)拆分为Username和Password两个独立字段。 - 主机层:
Hostname进一步拆分为Subdomain+Domain+TLD,同时保留Port和FullHost。 - 路径层:
Pathname拆解为Directory(目录)、Filename(文件名不含扩展名)和Suffix(扩展名)。 - 查询层:
Query(含?)+Hash(含#)+Fragment(不含#)+Resource(完整路径+查询+锚点)。
典型使用场景
- Web开发调试:快速拆分API接口地址,确认Host、Port、Path是否与路由配置一致。
- 爬虫开发:批量解析待抓取URL列表,提取Domain用于域名白名单、Suffix判断静态资源类型。
- 安全分析:分析钓鱼URL的子域名伪装、查询参数注入点、锚点XSS风险。
- 运维排错:拆解反向代理Nginx/Apache转发后的URL,检查Host头部与端口号是否正确。
- 教学演示:直观展示URL各组成部分,帮助理解RFC 3986统一资源标识符规范。
常见问题
为什么URL必须以http://或https://开头?
本工具使用.NET标准库的
Uri类进行解析,该类严格遵循RFC 3986规范。缺少协议头(Scheme)的字符串不是合法的绝对URI,Uri构造函数会抛出UriFormatException。如需解析省略协议的地址,请手动补全https://前缀后再解析。
多级子域名(如a.b.c.example.com)如何拆分?
工具采用「后两段为主域名」的通用策略:
Domain = 倒数第2段 + 最后1段,Subdomain = 前面所有段,TLD = 最后1段。例如 a.b.c.example.com → Domain=example.com,Subdomain=a.b.c,TLD=com。对于.co.uk、.com.cn等国家二级域名,此策略会略有偏差,实际开发建议结合公共后缀列表(Public Suffix List)。
URL中的中文或特殊字符如何处理?
.NET的
Uri类会自动对Host进行Punycode编码(IDNA处理),对Path和Query进行UTF-8百分号编码。本工具直接返回Uri对象的原始属性,因此中文路径会显示为%E4%B8%AD%E6%96%87形式。如需要查看解码后的中文,可使用URL解码工具进一步处理。
Hash(Fragment)部分会发送到服务器吗?
不会。根据HTTP规范,浏览器在发起请求时不会将URL的
#fragment部分发送到服务器,它仅用于浏览器本地定位页面锚点或被前端JavaScript读取(通过window.location.hash)。因此后端日志、Nginx access log中都看不到Fragment内容,这也是为什么API接口通常使用Query参数而非Hash传参。
URL中的用户名密码是否安全?本工具会记录吗?
本工具不会持久化存储任何用户输入的URL数据。解析请求在后端.NET服务器内存中即时处理,响应后立即释放,不写入日志或数据库。尽管如此,仍建议不要在公共网络环境下粘贴包含真实生产账号密码的URL,可先替换为示例值再解析。