微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么www.example.com/index.php/my/path/here由index.php处理?

我只是很好奇,如何调用apache的功能来指导这样的请求

www.example.com/index.PHP/my/path/here

文件index.PHP?在第一时刻,您可能会认为,如果此请求导致404错误页面将是正确的,因为站点根目录中没有名为index.PHP文件夹.

顺便说一句,有没有可能关闭这个Apache功能(如果它是一个功能),这样的请求真的最终得到404?

解决方法

这不是URL重写功能.或者至少它不需要.见 AcceptPathInfo Directive

This directive controls whether
requests that contain trailing
pathname information that follows an
actual filename (or non-existent file
in an existing directory) will be
accepted or rejected. The trailing
pathname information can be made
available to scripts in the
PATH_INFO environment variable.

For example,assume the location
/test/ points to a directory that
contains only the single file
here.html. Then requests for
/test/here.html/more and
/test/nothere.html/more both collect
/more as PATH_INFO.

它最初是CGI environment variable.

  • PATH_INFO

The extra path information,as given
by the client. In other words,scripts
can be accessed by their virtual
pathname,followed by extra
information at the end of this path.
The extra information is sent as
PATH_INFO. This information should be decoded by the server if it comes from a URL before it is passed to the CGI script.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐