如何从 URL 接收 GET 请求

问题描述

我习惯于发送对“外部”网址或我的网站服务器网址的各种请求并接收响应等。

因此,我也习惯于接收请求。

但是

仅当它针对像这样的 PHP 文件时:http://www.example.com/file.PHP

为了使我未来网站功能的核心部分能够正常工作,我需要能够监听对“空白”网址发出的 GET 请求,如下所示:http://www.example.com/blank/?key1=value1&key2=value2

有没有办法在调用此 URL 时“运行”PHP 脚本?即使它不是直接在请求中定位?任何其他脚本?

我对服务器端机制有点无知。

编辑:

我尝试使用以下内容创建 file.PHP

$key1 = $_GET['key1'];
$key2 = $_GET['key2'];
echo "$key1 and $key2";

但响应是 403(禁止


EDIT2:致我的主持人:链接的问题与我的问题不完全相同。他要求隐藏文件扩展名,我问如何定位目录。即使答案具有相同的来源(htaccess),它也不是相同的思考过程。 此外,我的标题明确提到了请求(因此是标签 API 和 ESI),而不仅仅是 PHP 主题

解决方法

一般来说:是的,但是如何做完全取决于您的网络服务器软件。例如,对于 Apache,您可以 use a .htaccess file 创建重写规则,使匹配特定模式(例如 /blank/<whatever>)的路径表现得好像它们是另一个路径(例如 /blank.php)。

但是在您实际上将 /blank/ 作为“目录”的情况下,还有一种更简单的方法:index.php 文件放入目录中。

这是一个几乎通用的约定,如果在 URL 中指定了 目录(没有特定的文件名),服务器将查找 index.php 文件(或 index.html,但您的问题特别是关于 PHP)在目录中并将请求定向到那里。