URL 根据参数重定向

URL redirection upon parameters

我有一个 url 模式 -- www.domain.info/(unique_number)

例如:http://domain.info/1211.10/09879 其中 1211.10/09879 是一个唯一的数字

现在,根据 GET 请求,我想将此 url 重定向到 page.php,其中 page.php 将显示 unique_number 的数据。

我应该在哪里编码以从 url 获取唯一编号?(我不想创建目录 - 1211.10/09878/)

实现此目标的最佳方法是什么?

要实现这一点,您必须首先配置 Web 服务器,以便将所有请求发送到同一个脚本,假设您使用的是 Apache,这将是这样的:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ routing.php [QSA,L]

这会将所有未指向实际文件的请求发送到 routing.php 脚本。

现在 routing.php 可以通过全局 $_SERVER['REQUEST_URI'] 变量访问标识符:

// assuming the whole URL is http://domain.info/1211.10/09879?someParameter=someValue
$uri = $_SERVER['REQUEST_URI'];

// remove the leading / and parameters:
$uri = substr($uri, 1);
if (strstr($uri, '?') !== false)
{
    $uri = substr($uri, 0, strpos($uri, '?'));
}

// Here $uri contains "1211.10/09879" and you can carry on