![使用空格字符重定向以进行文件下载](https://linux22.com/image/727521/%E4%BD%BF%E7%94%A8%E7%A9%BA%E6%A0%BC%E5%AD%97%E7%AC%A6%E9%87%8D%E5%AE%9A%E5%90%91%E4%BB%A5%E8%BF%9B%E8%A1%8C%E6%96%87%E4%BB%B6%E4%B8%8B%E8%BD%BD.png)
我在 .htaccess 文件中有这个:
Redirect 301 /product-installer https://download.testsite.com/installers/My%20Product%20v3.0.0.0.exe
Firefox 可以正常工作,因为当您单击 URL 时,Firefox 可以正确下载文件,如下所示:
My Product v3.0.0.0.exe
但是在 IE/Edge 上它会下载并保存为:
My%20Product%20v3.0.0.0.exe
我想知道我在这里是否做错了什么或者 IE/Edge 是否有问题?
答案1
这是 IE/Edge 的正常行为。某些网络浏览器(例如 Firefox)会将文件下载名称中的 %20 替换为空格。其他网络浏览器(例如 IE/Edge)会将文件下载名称中的空格替换为 %20。
在另存为窗口中,用户可以将 %20 重命名为空白。或者通过文件浏览器执行相同操作。
https://superuser.com/a/604604/722608
在 URL 中使用空格是可行的,但它们会显示为 %20。连字符和下划线是通过 URL 访问资源的首选单词分隔符。如果可能,请尽量避免在文件名中使用空格。
https://webtech.training.oregonstate.edu/faq/what-are-good-file-naming-conventions