相关疑难解决方法(0)

URL中的Unicode字符

在2010年,您是否会在大型门户网站中提供包含UTF-8字符的URL?

根据URL上的RFC禁止使用Unicode字符(请参阅此处).它们必须被编码为符合标准的百分比.

不过,我的主要观点是提供未编码的字符,其唯一目的是拥有漂亮的URL,因此百分比编码已经完成.

无论RFC说什么,所有主流浏览器似乎都可以解析这些URL.不过,我的总体印象是,当离开网络浏览器的域时,它会变得非常不稳定:

  • URL被复制+粘贴到文本文件,电子邮件,甚至是具有不同编码的网站
  • HTTP客户端库
  • 异国浏览器,RSS阅读器

我的印象是否正确,预计会遇到麻烦,因此,如果您为非技术受众提供服务并且即使引用并传递了所有链接也很重要,那么这还不是一个实用的解决方案吗?

是否有一些神奇的方式在HTML中提供漂亮的URL

http://www.example.com/düsseldorf?neighbourhood=Lörick
Run Code Online (Sandbox Code Playgroud)

可以复制+粘贴特殊字符,但在旧客户端重复使用时可以正常工作吗?

html unicode url utf-8

133
推荐指数
5
解决办法
13万
查看次数

如何使用mod_rewrite和Apache编码特殊字符?

我想为我的标签系统,简洁的URL与所有的特殊字符一起:+,&,#,%,和=.有没有办法用mod_rewrite执行此操作而无需对链接进行双重编码?

我注意到delicious.com和stackoverflow似乎能够处理单个编码的特殊字符.什么是神奇的公式?

这是我想要发生的事情的一个例子:

http://www.foo.com/tag/c%2b%2b
Run Code Online (Sandbox Code Playgroud)

会触发以下RewriteRule:

RewriteRule ^tag/(.*)   script.php?tag=$1
Run Code Online (Sandbox Code Playgroud)

而tag的值将是"c ++"

apache/mod_rewrite的正常操作不能像这样工作,因为它似乎将加号转换为空格.如果我将加号双重编码为​​'%252B',那么我会得到所需的结果 - 但是它会使得网页看起来很混乱,而且对我来说似乎很不好看.

apache mod-rewrite escaping

28
推荐指数
2
解决办法
6万
查看次数

标签 统计

apache ×1

escaping ×1

html ×1

mod-rewrite ×1

unicode ×1

url ×1

utf-8 ×1