我正在写一个HTTP服务器,当我尝试了一个偶然的php博客时,我收到了浏览器的请求,比如:
获取/获取_偶然发现_.p.p/模板/默认/管理/关键管理器。
"偶然发现"文件确实存在,所以"偶然发现"文件必然会失败。
当一个网络服务器拒绝这样的请求时应该做什么?
我尝试用通常的TP请求头(请求-Uri、PASE-信息等)来执行"意外发现--管理",但这似乎不起作用,因此需要更多的魔法。有人能解释一下吗。
Web服务器将尝试从左到右匹配URL。
因为它找到了。将它叫做php文件,其他的URL将被存储在$_服务器['p')全局PHP变量中,该变量可用于脚本读取。
然后脚本可以根据这个变量执行它的逻辑。
REQUEST_URI
和PATH_INFO
不是HTTP请求头。它们是cci环境变量。
要求/serendipity_admin.php/templates/default/admin/pluginmanager.css
结果:/serendipity_admin.php
与…赛跑PATH_INFO
作为/templates/default/admin/pluginmanager.css
你应该 阅读cci规范 .
这个博客可能是你运行的一个模块,就像阿帕奇的多视图一样。多视图导致阿帕奇寻找serendipity_admin.php
(除其他事项外)如果它找不到具有查询中指定的确切路径的文件。
这看起来像是在期待你使用阿帕奇的重写引擎。是不是有一个。数据库访问文件?如果是这样的话,您需要设置允许覆盖虚拟主机中的所有内容,或者将文件的内容复制到虚拟主机中。