rfc 1738对“搜索部分”中正斜杠的编码并不精确:
如果对应于八位字节的字符在方案中被保留,则必须对八位字节进行编码。
...
只有字母数字、特殊字符“$-_.+!*'()”和用于其保留目的的保留字符可以在 URL 中未编码使用。
...
在 'path' 和 'searchpart' 组件中,“/”、“;”、“?” 被保留。
您知道“/”在搜索部分网址中的“保留目的”是什么吗?
如果我的服务器处理未编码的斜杠,是否有任何真正的理由遵循规范并对正斜杠进行编码?
当我需要不断解码只是带有斜杠的字母数字的 url 参数时,它让我发疯。
下面是一个生活例子:
http://localhost/login?url=/a/path/to/protected/content
对比
http://localhost/login?url=%2Fa%2Fpath%2Fto%2Fprotected%2Fcontent "