首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能用Unicode字符正确地重定向位置标头

不能用Unicode字符正确地重定向位置标头
EN

Stack Overflow用户
提问于 2011-02-03 09:15:15
回答 1查看 1.7K关注 0票数 1

在我的站点上,我用UTF-8编码的Unicode数据发送一个位置标头,如下所示:

代码语言:javascript
复制
<?php
    header("Location: http://sr.wikipedia.org/sr/Србија");
    exit;
?>

在Internet中,它将用户发送到:http://sr.wikipedia.org/sr/Србија

每一个其他浏览器,它都将用户发送到http://sr.wikipedia.org/sr/Србија,这是

我正在Ubuntu框上运行Apache 2,位置标头中的URL包括站点的域名。该网站为其内容类型发送text/html; charset=utf-8

我试过:

httpd.conf.

  • Encoding使用rawurlencode().

  • Sending header("Content-Type: text/html; charset=utf-8");AddDefaultCharset utf-8指令添加到gzip之前,
  • AddDefaultCharset utf-8指令添加到gzip,URL通过utf8_encode()utf8_decode()

但是,也就是仍然无法识别URL的编码。有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-02-03 09:17:03

您忘记了头字段名,需要使用rawurlencode正确地编码URI路径。

代码语言:javascript
复制
header("Location: http://sr.wikipedia.org/sr/".rawurlencode("Србија"));
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4884193

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档