nginx+php实现带参数通过a域名访问跳转到b域名同时带参数

  • 内容
  • 评论
  • 相关

场景

比如访问http://01.wlphp.com?id=1&from=2 能够跳转到http://01.weixin.com?id=1&from=2

第一步配置nginx

server {
    listen 80;
    server_name yourdomain.com;

    root /path/to/your/website;

    # 将404或者403错误重定向到404.php页面,并保留原始状态码
    error_page 404 =200 /404.php;

    error_page 403 =200 /404.php;

    # 其他配置项...
    
    location / {
        # 其他配置项...
    }
}


第二步编写404.php文件,放在站点根目录


<?php
// 获取当前请求的参数
$originalParams = $_SERVER['QUERY_STRING'];

$domainName = $_SERVER["HTTP_HOST"];
// 旧域名
$oldDomain = 'wlphp.com';
// 新的目标域名
$newDomain = 'weixin.com';

$redirectUrl = str_replace($oldDomain, $newDomain, $domainName);

$finalUrl = "http://" . $redirectUrl . $_SERVER['REQUEST_URI'];

// 执行页面重定向,使用下面的 JavaScript 跳转,因为 Nginx 返回给客户端 200 状态码
//header('Location: ' . $finalUrl);
//die;

?>
<script>
    window.location.href="<?php echo $finalUrl; ?>";
</script>





server { listen 80; server_name yourdomain.com; root /path/to/your/website; # 将404错误重定向到404.php页面,并保留原始状态码 error_page 404 =200 /404.php; # 其他配置项... location / { # 其他配置项... } }

server { listen 80; server_name yourdomain.com; root /path/to/your/website; # 将404错误重定向到404.php页面,并保留原始状态码 error_page 404 =200 /404.php; # 其他配置项... location / { # 其他配置项... } }

本文标签:

版权声明:若无特殊注明,本文皆为《菜鸟站长》原创,转载请保留文章出处。

本文链接:nginx+php实现带参数通过a域名访问跳转到b域名同时带参数 - http://wziyi.com.cn/?post=420

发表评论

电子邮件地址不会被公开。 必填项已用*标注