为什么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
asPATH_INFO
.
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.
标签:apache,php,friendly-url 来源: https://codeday.me/bug/20190715/1463929.html