在网址中是+不允许的字符?

时间:2016-09-10 20:14:58

标签: codeigniter url uri codeigniter-3

以下网址中不允许的内容是什么?

http://myPortfolio/Showcase/Kimber+Tisdale+Photography

我收到您提交的URI已禁止使用字符。错误消息。据我所知,+被允许,不是吗?

参考:Which characters make a URL invalid?

2 个答案:

答案 0 :(得分:1)

这是一个允许的角色,但不是你使用它的方式。它在URL的查询字符串部分中是允许的,而不是在url路径名中。

如果你只是分开单词,通常使用连字符或下划线,或%20表示空格。您可以使用CI的url助手为您编码字符串:

46, 15910
43, 15287
43, 15237
42, 15923
41, 15298

http://www.codeigniter.com/user_guide/helpers/url_helper.html#url_title

答案 1 :(得分:0)

URI路径中允许+

您可以自己查看:

  1. 访问URI standard
  2. 检查Path组件中允许的字符。
  3. 请注意,每个非空路径都可能包含segment集合中的字符。
  4. 请注意,segment集包含pchar集中的字符。
  5. 请注意,pchar集包含sub-delims集中的字符。
  6. sub-delims定义为:

      

    “!” /“$”/“&” /“'”/“(”/“)”/“*”/“+”/“,”/“;” /“=”

    如您所见,此处列出了+

  7. See my list of all allowed characters in URI paths。)

    HTTP(S)URI路径中+的一个突出示例是Google Plus配置文件,例如:

    https://plus.google.com/+MattCutts