V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NicholasK
V2EX  ›  PHP

[火狐牛皮] PHP 代码设置 301 后我在火狐看到成功跳转 301,但响应吗却是 200

  •  
  •   NicholasK · 2019-06-25 18:15:52 +08:00 · 3182 次点击
    这是一个创建于 1984 天前的主题,其中的信息可能已经有所发展或是发生改变。

    使用的是 win 虚拟主机,不能通过服务器进行重定向,所以我百度了一堆,最后代码实现了,在火狐浏览器重定向成功,代码如下,直接加在 head 后面的。 <?php code: if(($http_server_vars["http_host"]=="www.hszbjrkg.com")||($http_server_vars["http_host"]=="hszbjrkg.com")) { header("http/1.1 301 moved permanently"); header("location: http://www.zunbon.com.cn/"); } ?>

    发现火狐牛皮,可以马上实现域名重定向跳转,但是其浏览器不行,状态吗也是 200,恳求大神指教指教。
    
    第 1 条附言  ·  2019-06-26 09:31:20 +08:00
    会有报酬,谢谢
    4 条回复    2019-07-02 08:56:11 +08:00
    anviod
        1
    anviod  
       2019-06-26 11:15:34 +08:00   ❤️ 1
    跳转的时候指定状态码就行了

    ---

    <?php
    // 301 Moved Permanently
    header("Location: http://www.zunbon.com.cn/",TRUE,301);

    ---
    Hardrain
        2
    Hardrain  
       2019-06-29 01:33:38 +08:00
    header("http/1.1 301 moved permanently");
    换成
    http_response_code(301);

    用百度这种垃圾搜索引擎只会找出无穷多反复转载的,且过时 /错误的无用信息。

    跳转完记得 die();或 exit();
    免得脚本后面的内容继续执行。

    <?php
    if(($http_server_vars["http_host"] == "www.hszbjrkg.com") ||
    $http_server_vars["http_host"] == "hszbjrkg.com")
    {
    http_response_code(301);
    header("Location: http://www.zunbon.com.cn/");
    die();
    }

    #......
    ?>
    Hardrain
        3
    Hardrain  
       2019-06-29 01:35:07 +08:00   ❤️ 1
    此外$http_server_vars 可能在最新 /将来的版本中将被 /已被废弃
    使用$_SERVER

    参见 https://www.php.net/manual/en/reserved.variables.server.php
    NicholasK
        4
    NicholasK  
    OP
       2019-07-02 08:56:11 +08:00
    通过 PHP 代码全局做 301 重定向处理了,是代码问题
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2906 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 02:42 · PVG 10:42 · LAX 18:42 · JFK 21:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.