【问题标题】:Apache redirect Logical Negation ¬ to Tilde ~Apache 将逻辑否定 ¬ 重定向到波浪号 ~
【发布时间】:2012-10-22 02:49:42
【问题描述】:

我有一个要重定向的 URL,但是我似乎无法将字符输入 vim。

字符是 ¬(逻辑否定),我想将其重定向到 ~(波浪号)。

Redirect permanent /¬foo http://www.example.com/~foo

Vim 不允许我将此字符复制到终端中,而我的键盘中没有它!

【问题讨论】:

  • 无论如何我已经回答了,但对于将来的参考问题,这样的问题可能更适合 serverfault 而不是 stackoverflow。
  • 感谢您的信息 - 下次会在那里发布。

标签: apache redirect special-characters tilde negation


【解决方案1】:

这是一个非 ASCII 字符,因此如果用户请求 /¬foo,浏览器将发送到您的服务器的 URI 应该是 /%C2%ACfoo(使用编码为 UTF-8 的 ¬ 字符和 UTF-8 的每个字节8 然后 URI 编码)或者可能只是 /%ACfoo (如果浏览器不首先进行 UTF-8 转换)。尝试为编码表单而不是原始表单配置重定向。

【讨论】:

    【解决方案2】:

    以下是有关您的狂野角色的更多信息:

    http://www.theasciicode.com.ar/extended-ascii-code/logical-negation-symbol-ascii-code-170.html

    安装 yudit,它是一个 unicode 编辑器,你也许可以更容易地插入它。

    在数学上讲,当且仅当 A 为假时,命题 ¬A 为真。

    http://en.wikipedia.org/wiki/Negation

    您可能需要在 vi 中设置您的编码首选项,如下所述:

    Vim and ASCII extended characters?

    如何将逻辑否定字符添加到 VI:

    在 VI 中,进入插入模式。在 INSERT 模式下按:

    Ctrl-v 172

    其中 172 是代表您想要的字符的字符代码。这假设您使用的是默认编码 ISO 8859-1。

    您可能想知道为什么在扩展 ASCII 中逻辑不是 170 而在 VI 中您必须键入 172 才能获得该字符?因为您使用的是 ISO 8859-1:

    http://www.htmlhelp.com/reference/charset/iso160-191.html

    我非常怀疑 Apache 是否会做你想做的事

    你可能会比你现在要聪明得多来完成它。您的逻辑非字符将在客户端浏览器和 Apache 服务器之间重新编码。

    http://www.packetizer.com/labs/cs/characters.cgi?text=%C2%AC&submit=Submit

    【讨论】:

    • 谢谢 - 这似乎是 vim 的问题。 ctrl-V 172 允许我输入正确的字符。
    猜你喜欢
    • 1970-01-01
    • 2018-05-18
    • 1970-01-01
    • 1970-01-01
    • 2020-12-29
    • 2019-07-07
    • 2019-12-17
    • 2013-07-10
    • 2011-11-03
    相关资源
    最近更新 更多