问题标签 [idn]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
225 浏览

google-chrome - IDN 如何在浏览器地址栏中显示

我想购买 IDN 域,但我不确定在浏览器中的外观。比如,用户会看到xn-部分还是在我的语言中看起来和正常一样?

0 投票
1 回答
1822 浏览

centos - idn2.h:没有这样的文件或目录

我在 64 位 Centos 6.6 上并想安装 libidn2-devel。我试过yum install libidn2-devel了,但没有用。我尝试从 Internet 上的各个网站下载 rpm(手动解决递归依赖关系!)

(不是这样)很快我就停留在依赖项之一

我在 Internet 上的任何地方都找不到(对于 CentOS)。

最终,我下载了源代码并尝试构建它。

成功!

然而,当我用它来运行一个模块时,它给了我


PS:RPM 看起来很奇怪

0 投票
1 回答
92 浏览

internationalization - 让 gmail 接受 Cree IDN

关于如何让 gmail 接受第一国 IDN 的任何线索?具体来说,这些是使用加拿大原住民音节的 IDN。Google 的 SMTP 服务器从这些 IDN 退回电子邮件,抱怨 IDN“使用的域名不符合我们的域名政策”。深入研究 IETF 的 RFC 和 unicode.org 上的文档表明这些 IDN 应该没问题(在高度限制级别允许),因为字符是“PVALID”(协议有效)并且 IDN 仅使用单个脚本。

有没有其他人遇到过这个并找到解决方法?除了使用 icloud 和其他非谷歌服务之外,我没有找到任何其他服务。是的,Apple 支持北美的第一批国家。酷,嗯?

我知道这种用例很少见,因为这些语言正处于灭绝的边缘(但正在卷土重来!)。这只是一种耻辱,因为谷歌缺乏 IDN 支持是原住民感到被排斥的另一个原因。

好消息是 noto 字体现在似乎包含了所有加拿大原住民音节。所以我们可以写它们,但不能完全使用它们。

0 投票
2 回答
2458 浏览

c# - 包括IDN字符的域名正则表达式c#

我希望我的域名不包含多个连续(.)'/'或任何其他特殊字符。但它可以包含 IDN 字符,例如Á, ś, etc... 我可以通过使用这个正则表达式来满足所有要求(IDN 除外):

问题是这个正则表达式也拒绝 IDN 字符。我想要一个允许 IDN 字符的正则表达式。我做了很多研究,但我无法弄清楚。

0 投票
1 回答
1031 浏览

utf-8 - 主机名解析失败,主机名包含 utf-8 字符的“未知主机”错误

我正在尝试从 linux 客户端 ping 主机名“win-2k12r2-addc.阿伯测阿伯测ad.hai.com”。

我看到 DNS 请求通过网络发送,主机名以 utf-8 格式发送,并且我从 DNS 服务器获得了正确 IP 地址的响应。

但是 ping 失败并出现以下错误: ping: unknown host win-2k12r2-addc.阿伯测阿伯测ad.hai.com

如果我在 /etc/hosts 中添加一个条目,它工作正常
我在 /etc/hosts 中有以下条目工作时。++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++
127.0.0.1 localhost ava-dev
::1 localhost
10.141.33.93 win-2k12r2-addc.阿伯测阿伯ad.hai.com
++++++++++++测++++++++++++++++++++++++++++++++++++++++++++++++++


/etc/nsswitch.conf 文件包含以下主机条目。
++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++
主机:文件 dns
+++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++

我有点怀疑当我们尝试解析地址时 getaddrInfo() 调用失败,即它无法正确处理包含 unicode 字符的主机名的 DNS 响应。

有没有人遇到过这个问题?或者有没有人尝试从 linux 客户端解析 unicode 主机名?

我怀疑 getaddrinfo() 的原因是由于以下原因。
除了 ping,我尝试对同一主机执行以下 ldap 命令,但失败并出现以下错误
++++++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++++++++ ldapsearch -d 255 -x -h win-2k12r2 -addc.阿伯测阿伯测ad.hai.com
ldap_create
ldap_url_parse_ext(ldap://win-2k12r2-addc.%E9%98%BF%E4%BC%AF%E6%B5%8B%E9%98% BF%E4%BC%AF%E6%B5%8Bad.hai.com)
ldap_sasl_bind
ldap_send_initial_request
ldap_new_connection 1 1 0
ldap_int_open_connection
ldap_connect_to_host: TCP win-2k12r2-addc.阿伯测阿伯测ad.hai.com:389
ldap_connect_to_host: getaddrinfo失败:名称或服务未知
ldap_err2string
ldap_sasl_bind(SIMPLE): 无法联系LDAP服务器(-1)
+++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++++++

在这两种情况下(ping / ldap),我看到 DNS 查询请求进入 DNS 服务器,并且从 DNS 服务器返回到 linux 客户端的正确响应。以下是 DNS 查询中发送的主机名的值

win-2k12r2-addc.\351\230\277\344\274\257\346\265\213\351\230\277\344\274\257\346\265\213ad.hai.com:A型,类

0 投票
0 回答
1009 浏览

c++ - 如何删除 libcurl 中 normaliz.dll 的依赖关系?

libcurl在我的 Windows 应用程序中使用支持Windows xp或更高版本,它是一个单独的 dll 文件,为了更容易分发给其他人,我删除了除 normaliz.dll 之外的所有依赖文件。我知道它用于 WinIDN,但它在 Windows xp 上不存在。

我想知道有没有办法删除 normaliz.dll 依赖?我不能使用 libidn 因为许可证。我研究了很长时间,发现最简单的方法是用我的项目编译 normaliz.dll 中的 WinIDN 源代码。

根据https://github.com/curl/curl/blob/master/lib/idn_win32.c,我可以看到我需要提供IdnToAsciiandIdnToUnicode功能。

所以问题就变成了我在哪里可以看到 normaliz.dll 是如何实现的IdnToAsciiIdnToUnicode这样我就可以自己编写相同的函数了?

0 投票
1 回答
116 浏览

dns - WHMCS IDN 和 punncycode

我在 WHMCS 和 WHOIS 查询方面遇到问题。.de 域的标准查找是 socket://whois.denic.de 但每当我使用 IDN(例如:äch.de)时,WHOIS 都会说该域不可用(记住 IDN 已启用)但是当我查找时在 denic.de äch.de 上可用。

我需要找到一种解决方法(也许禁用 .de 域的 punnycode?)或其他支持 WHMCS 和 .de 域的 WHOIS 服务。

帮助将被appriciated!

最诚挚的问候。

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

0 投票
1 回答
596 浏览

url - 剪切和粘贴期间的网址更改

我刚刚遇到了一些我不太明白的事情。我收到了一份包含网址的文件(来自我的雇主的行政备忘录)。地址不是可点击的超链接,它只是文本。

有趣的是,当地址被复制并粘贴到 Web 浏览器地址栏中时,它会导致 Web 浏览器尝试联系与剪切和粘贴文本包含的不同的 Web 地址。地址文本最初似乎已正确粘贴到地址栏中,直到我按 Enter 键 - 然后文本立即更改为其他内容。

请注意,这不是简单的网站重定向问题。我知道这一点,因为如果我手动输入相同的地址(而不是从原始文档中复制和粘贴),则会加载“正确”的地址。只有在复制/粘贴/加载过程之后,文本才会出现神奇的变化。

我还注意到,如果我首先将地址复制并粘贴到记事本文本文件中,保存文本文件,关闭,重新打开,然后复制/粘贴到 Web 浏览器,然后加载“正确”站点。值得注意的是,当我保存时,记事本会警告说有 Unicode 格式的字符会丢失。所以我假设当我保存为纯文本时,有一些隐藏的 unicode 文本被删除。

但是,如果我在记事本中启用“显示 Unicode 控制字符”选项,我什么也看不到。那么这里可能发生了什么?

具体来说,域转换如下: http://www.aaaaaaaaaa-usa.com/bbbbb/ddddddtools.html==> www.xn--aaaaaaaaaausa-km6g.com。(浏览器当然报找不到服务器的IP地址)

0 投票
2 回答
162 浏览

perl - Perl:同形异义词攻击。可以比较 ascii / non-ascii 字符串,视觉上相似吗?

我遇到了这种所谓的“同形异义词攻击”,我想拒绝解码后的 punycode 在视觉上似乎只是字母数字的域。例如,www.xn--80ak6aa92e.com 将在浏览器 (Firefox) 中显示 www.apple.com。域在视觉上是相同的,但字符集是不同的。Chrome 已经对此进行了修补,并且浏览器会显示 punycode。

我有下面的例子。

视觉上是相同的,但它们不会匹配。可以将 unicode 字符串 ($IDN) 与字母数字字符串进行比较,视觉上是否相同?

0 投票
0 回答
70 浏览

wikimedia - Wikimedia show page not found after set short url

i want to remove index.php from mediawiki url. After that i can't access to main page.

What i did:

  1. Add to LocalSettings.php following lines:

    $wgScriptPath = "/mediawiki";

    $wgArticlePath = "/wiki/$1";

    $wgUsePathInfo = true;

  2. Created .htaccess:

    Enable the rewrite engine

    RewriteEngine On

    Short URL for wiki pages

    RewriteRule ^/?wiki(/.*)?$ %{DOCUMENT_ROOT}/mediawiki/index.php [L]

    Redirect / to Main Page

    RewriteRule ^/*$ %{DOCUMENT_ROOT}/mediawiki/index.php [L]

And created alias in apache conf, if i go to / apache redirecting to /wiki/. After make that changes when i enter on localhost/ i've got localhost/Strona_główna - this is in polish - and below error:

Before, when the index.php was appearing i've been having url like this: localhost/wiki/index.php/Strona_główa and that was working.

I think is something wrong with character settings, but i don't knowe where i supposed to search resolve.