作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这个重写规则RewriteRule ^test/(.*)$ test.php?url=$1
在这个网址上mysite.com/test//one///two////three///
给我这个结果$1=url='one/two/three/'
如果重要,我正在使用easyphp并且我想知道为什么 Apache 在内部删除多个斜杠而不重定向到正确的 URL?以及如何禁用或添加重定向到此行为?
预先感谢
最佳答案
似乎多条斜线违反了标准。正如 this post 中所指出的, RFC 1630说:
PATH
The rest of the URI follows the colon in a format depending on the scheme. The path is interpreted in a manner dependent on the protocol being used. However, when it contains slashes, these ust imply a hierarchical structure.
///
并不意味着分层结构 - 您的文件夹名称为空。由此我猜想 Apache 的行为是设计使然。 (使用多个斜杠也不是一个好主意,因为结果将是无效的 URL)。
关于regex - 为什么 Apache 删除多个斜杠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8699542/
我是一名优秀的程序员,十分优秀!