【file】关于file协议
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了【file】关于file协议相关的知识,希望对你有一定的参考价值。
参考技术A 中文释义:本地文件传输协议注解:File协议主要用于访问本地计算机中的文件,就如同在Windows资源管理器中打开文件一样。
应用:要使用File协议,基本的格式如下:file:///文件路径,比如要打开D盘images文件夹中的 pic.gif 文件,那么可以在资源管理器或IE地址栏中键入: file:///D:/images/pic.gif 然后回车。
UNC(Universal Naming Convention)
为了迎合网络化的趋势, Windows的地址风格(C:\ABC\def\ghi及\\计算机名\文件夹\文件) 向网络地址风格作了一次兼容变换:
://后面是机器的网络地址(IP地址)
/后面是文件夹(目录)和文件名
整体形如:
file://机器的IP地址/目录/文件
对于本地机器,机器的IP地址变成127.0.0.1或localhost或干脆什么也不写。
对于本地机器,根目录下的目录是Windows下的盘符,如“C:”、“D:”等。
file://127.0.0.1/C:/ 本地C盘
file://localhost/D:/ 本地D盘
file:///E:/ 本地E盘
需要注意的是,最后面的/是必不可少的,且file协议,通常只能在Windows Explorer和Micosoft IE中使用!
UNC(Universal Naming Convention):通用命名规则,也称通用命名规范、通用命名约定。
UNC为网络(主要指局域网)上资源的完整Windows名称。
格式:\\servername\sharename,其中servername是服务器名,sharename是共享资源的名称。
目录或文件的UNC名称可以包括共享名称下的目录路径,格式为: \\servername\sharename\directory\filename 。
首先创建文件夹,右键共享,高级共享。在以上选项可选时依次执行。
访问该文件夹,在同网络中,输入\\ + 对方的ip或+对方的主机名即可访问对方共享的文件夹
共享文件的功能基于445号端口,如果在\\+主机名的形式访问,还需要Netbios-ns137 、138以及TCP139端口。
关闭139端口的方法:“网络连接/属性/TCPIP协议/属性/高级/WINS中设置启用或者禁用NBT(NetBIOS over TCP/IP)
关闭445端口的方法:防火墙阻塞445端口或者禁用server服务都可以。
定义:一系列以编号排定的文件
用途:收集有关互联网相关信息
所有关于Internet的正式标准都以RFC(Request for Comment)文档出版。另外,大量的RFC并不是正式的标准,出版的目的只是为了提供信息。
RFC的篇幅从1页到2 0 0页不等,每一项都用一个数字来标识,如RFC 1122,数字越大说明RFC的内容越新。
FIle协议与Http协议及区别
https://www.cnblogs.com/lishanlei/p/9327646.html
The "file" URI Scheme
https://tools.ietf.org/html/rfc8089
file URI scheme
https://en.wikipedia.org/wiki/File_URI_scheme
file 协议导致的跨域问题以及解决方案
https://cloud.tencent.com/developer/article/1534714
file协议
https://da7uran0ir.github.io/2018/07/24/php%E6%94%AF%E6%8C%81%E7%9A%84%E5%8D%8F%E8%AE%AE/file%E5%8D%8F%E8%AE%AE
URL 缩短:重定向到 'file://' 目标(文件协议目标)
【中文标题】URL 缩短:重定向到 \'file://\' 目标(文件协议目标)【英文标题】:URL shortening: redirection to a 'file://' target (file protocol target)URL 缩短:重定向到 'file://' 目标(文件协议目标) 【发布时间】:2010-12-27 12:32:49 【问题描述】:我正在尝试一个 URL 缩短器的简单实现,例如 tinyurl.com 或 bit.ly。目前我在我的 servlet 中做了一个response.sendRedirect(targetURL)
- 它适用于 http/ftp 目标 URL。
但是,我在重定向到 file:///c:/temp
等目标时遇到问题(c:\temp
当然是在本地/客户端系统上)。
在 Firefox 地址栏输入 file:///c:/temp
有效,但来自服务器的重定向似乎无济于事。
出于某种安全原因,这是不可能的吗?还是我在这里做错了什么?
提前致谢!
【问题讨论】:
P.S. Raj 很高兴接受我的第二个答案,因为它更好地解释了事情。我之所以这么问,是因为您接受的答案过去常常贴在顶部,以便为其他读者提供帮助。因此,在这种情况下,它不会提供任何帮助。这个答案是为了娱乐。谢谢。 【参考方案1】:这对于某些安全性来说是不可能的吗 原因?还是我做错了什么 在这里?
是的。
【讨论】:
【参考方案2】:不想通过解释事情来破坏我第一个答案的美感。因此,我决定,应该在这里进行解释。
好吧,首先,您怎么能想到访问您客户的本地驱动器。它确实是一个安全问题。就像那样,您无权访问客户的文件系统。
您似乎没有这样做的要求。如果出于某种奇怪的原因必须这样做,那么您可以考虑一个签名的小程序或其他东西,我相信。
就您的困惑而言,它正在您的 Firefox 上运行。这是因为您可以访问自己的机器,并且 URL 对 firefox 来说是可以理解的。但是,在 servlet 中,您不能这样做。阅读sendRedirect()
的文档,上面写着
如果位置是相对的,没有 前导 '/' 容器解释 它相对于当前请求 URI。如果位置是相对的 容器解释的前导“/” 它相对于 servlet 容器根目录。
【讨论】:
谢谢 - 这是有道理的。但是,在 IE 中,重定向适用于“某些”目标。重定向到本地磁盘“C:\foo.doc”似乎不起作用,但“D:\foo.doc”可以 - 其中“D”是网络驱动器。D
是网络驱动器,它已安装。确实,这会起作用,为什么它不应该。不确定使用 IE 访问 C
驱动器的问题。顺便说一句,你收到什么信息?
你确定,你的C
驱动器中有 foo.doc 吗?如果是,那么肯定有一些关于 Windows 主分区或 NTFS 分区或类似的东西。不确定,不能肯定地说。从来没有遇到过这个,因为我没有 Windows。 ;)以上是关于【file】关于file协议的主要内容,如果未能解决你的问题,请参考以下文章