PHP 使用请求 URL 重定向子域


php redirect subdomain with request url

我需要将流量从 www.example.com/api 重定向到 api.example.com/api 并传递/包含请求字符串。

例如:

www.example.com/api?t=search&q=coffee&apikey=936043b06547843到 api.example.com/api?t=search&q=coffee&apikey=936043b06547843

每个请求都有不同的搜索词和 API 密钥,以传递到"我的网站"的子域。

有人可以告诉我我需要做什么才能实现这一目标吗?

我尝试过 http 重定向,但这不会传递字符串。

在旧页面中捕获您需要的所有参数,如下所示:

<?php
    // code
    // ...
    $t=$_GET["t"];
    // ...
    // code
?>

然后相应地调用header()将所有内容路由到新页面,如下所示:

<?php
    // code
        header("location: api.example.com?t=$t");
    // code
?>

如果你需要传递所有内容,你可以通过 $_SESSION 传递整个数组:

<?php
    // code
        session_start();
        $_SESSION["data"]=$_GET;
        header("location: api.example.com");
    // code
?>

并像这样将其取回:

<?php
    // code
    session_start();
    $data=$_SESSION["data"];
    session_unset();
    // code
?>

当然,使用最后一种方法,您需要像这样访问参数:

<?php
    // code
    $t=$data["t"];
    // code
?>