小编jro*_*ell的帖子

语言重定向的HTTP状态代码

我想知道我应该用语言重定向发送哪个HTTP状态代码.

我有以下PHP代码通过HTTP标头重定向到Accept-Language浏览器标头中最重要的语言.

<?
$langs = array();

if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
    // break up string into pieces (languages and q factors)
    preg_match_all('/([a-z]{1,8}(-[a-z]{1,8})?)\s*(;\s*q\s*=\s*(1|0\.[0-9]+))?/i', $_SERVER['HTTP_ACCEPT_LANGUAGE'], $lang_parse);

    if (count($lang_parse[1])) {
        // create a list like "en" => 0.8
        $langs = array_combine($lang_parse[1], $lang_parse[4]);

        // set default to 1 for any without q factor
        foreach ($langs as $lang => $val) {
            if ($val === '') $langs[$lang] = 1;
        }

        // sort list based on value 
        arsort($langs, SORT_NUMERIC);
    }
}

// look through sorted list and use first …
Run Code Online (Sandbox Code Playgroud)

php seo redirect http

19
推荐指数
2
解决办法
5166
查看次数

6
推荐指数
1
解决办法
8083
查看次数

标签 统计

apache ×1

apache2 ×1

http ×1

lighttpd ×1

magento ×1

nginx ×1

php ×1

redirect ×1

seo ×1