我正在写一个HTTP服务器,当我尝试了一个偶然的php博客时,我收到了浏览器的请求,比如:

获取/获取_偶然发现_.p.p/模板/默认/管理/关键管理器。

"偶然发现"文件确实存在,所以"偶然发现"文件必然会失败。

当一个网络服务器拒绝这样的请求时应该做什么?

我尝试用通常的TP请求头(请求-Uri、PASE-信息等)来执行"意外发现--管理",但这似乎不起作用,因此需要更多的魔法。有人能解释一下吗。


Web服务器将尝试从左到右匹配URL。

因为它找到了。将它叫做php文件,其他的URL将被存储在$_服务器['p')全局PHP变量中,该变量可用于脚本读取。

然后脚本可以根据这个变量执行它的逻辑。


REQUEST_URIPATH_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 (除其他事项外)如果它找不到具有查询中指定的确切路径的文件。


这看起来像是在期待你使用阿帕奇的重写引擎。是不是有一个。数据库访问文件?如果是这样的话,您需要设置允许覆盖虚拟主机中的所有内容,或者将文件的内容复制到虚拟主机中。