![如何在 FTP URL 中提供用户名和密码以便在浏览器中直接下载?](https://linux22.com/image/1551519/%E5%A6%82%E4%BD%95%E5%9C%A8%20FTP%20URL%20%E4%B8%AD%E6%8F%90%E4%BE%9B%E7%94%A8%E6%88%B7%E5%90%8D%E5%92%8C%E5%AF%86%E7%A0%81%E4%BB%A5%E4%BE%BF%E5%9C%A8%E6%B5%8F%E8%A7%88%E5%99%A8%E4%B8%AD%E7%9B%B4%E6%8E%A5%E4%B8%8B%E8%BD%BD%EF%BC%9F.png)
Chrome 和 Firefox 等现代浏览器可以处理 FTP 下载:
ftp://my-ftp.com/my-file.csv
我想与其他人分享一个链接,但不希望他们通过提示输入用户名和密码。
我知道安全方面的影响,但在这种情况下,易用性是首要考虑的。我想知道是否有选项可以直接在 FTP URL 中提供凭据。
答案1
您可以像这样向 URL 提供凭据:
username:password@host
你的示例将会变成:
ftp://username:[email protected]/my-file.csv
如果用户名包含无效符号,您将遇到问题,例如@
:
ftp://usern@me:[email protected]/my-file.csv
对于这样的下载,我不得不使用允许该符号的客户端,例如 FileZilla。
答案2
值得注意的例外(对于 HTTP 和 HTTPS 协议)是 IE:
Internet Explorer 3.0 至 6.0 版本支持以下 HTTP 或 HTTPS URL 语法:
http(s)://username:password@server/resource.ext
您可以使用此 URL 语法将用户信息自动发送到支持基本身份验证方法的网站。
(来源)。出于安全考虑,他们不支持它:
恶意用户可能会使用此 URL 语法创建一个超链接,该超链接看似打开合法网站,但实际上却打开了欺骗性(伪造)网站。例如,以下 URL 看似打开http://www.wingtiptoys.com但实际上打开了http://example.com: http://[电子邮件保护]