问题标签 [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.
sql - 国际域名长度统计throw SQL (PostgreSQL)
我有几个域名以 idn 格式(“xn--”)保存在数据库中。我想运行一些统计查询,但是在计算这些域名上的字符时遇到问题
当然,我对“xn--”域有误,我想从 sql 中获取计数(不进一步使用 php 或其他语言)。
或者,请给我一些建议如何做得更好。
- 首先将域名以 UTF-8 格式保存到表中会很棒,但现在这不是一个选项 :)
cocoa-touch - Cocoa 的 CFHost 是否支持 IDN?
WINAPI 具有将 Unicode 主机名转换为 Punycode 的方法。Cocoa/Cocoa Touch 有类似的机制吗?
jquery - Firefox 中的国际域名 + JQuery attr('href') 问题
我正在尝试使用 jQuery 设置 a 元素的 href。当我在 Firefox 6 中设置 IDN 时,href 是 url 编码的。一个例子是 IDN http://räksmörgås.se,它被修改为http://r%C3%A4ksm%C3%B6rg%C3%A5s.se。当我在其他浏览器(IE8、Chrome 13、Safari 5.1)中执行相同操作时,IDN 未编码。
我尝试这样做的原因是我让用户更改href,然后通过ajax 将页面内容的子集上传到Web 服务器。然后我遇到了问题,因为链接深埋在 html 字符串中;而且我不想挖掘 html 字符串中的所有元素。
在Firefox中设置hrefs时有什么方法可以禁用hrefs的编码?或者你有什么其他方法可以解决这个问题吗?
(我注意到,如果 href 是一个有效的 punycode IDN,即http://www.xn--rksmrgs-5wao1o.se,浏览器就很好而且很花哨。但是我必须在 js 中进行 punycode 编码,我不喜欢的东西;可能有一个或几个错误,并且似乎没有编码器/解码器的官方版本。)
以下 html 页面显示了我的问题。如果您输入国际域名(复制粘贴“http://www.räksmörgås.se”),#linkHtml 将获取整个 a 元素,如果使用 Firefox,则包括损坏的 href,如果使用任何其他浏览器,则包括正确的 href .
mod-rewrite - 如何将 s 域名重写为原始 IDN 而不是 punycode?
我购买了一个非拉丁字符的 IDN 域名。这很好,但是当我访问域名时,地址栏会显示该域的 punycode,而不是任何用户都难以记住的实际域。
无论如何我可以将域名重写为原始IDN而不是punycode?
示例:IDN =افلاماونلاين.com
地址栏中显示的 punycode =xn--mgbaaa1ksacgkcs1a.com
php - 如何在 PHP (cURL) 中启用 IDN 支持?
我的 cURL 配置(来回phpinfo()
函数)是:
IDN 的值为No。我可以启用它吗?如何?
谢谢!
apache - 如何在 apache 上编码 IDN?
我需要将apache中的请求重写到一个目录。
虽然大多数浏览器将其转换为 Punycode (Bücher.ch -> xn--bcher-kva.ch),但一些请求被编码为 ascii (Bücher.ch -> B%C3%BCcher.ch)。
我的目录在 Punycode 中,这意味着,我将“Bücher.ch”重定向到名为“xn--bcher-kva.ch”的目录。
关于如何将请求编码为 Punycode 的任何想法,以便我可以以正确的方式引导它们?
谢谢
c - conftest 中的“跳过不兼容”错误
我相信 conftest 缺少正确的标志,但我无法通过查看 mkmf.log 的内容来找出问题所在,这些内容包含在下面。任何想法,将不胜感激!
- 我正在编译以在 OpenWRT 路由器 (mips) 上使用
- 使用 ruby 1.9.2 执行此测试,然后构建 Makefile
- 有问题的 idn extconf.rb 文件
- 一个相关的问题,这就是为什么我使用引用的 gem 而不是 rubyforge 的原因
database-design - IDNA 转换域名的最大长度是多少?
第一件事:
在将每个域名转换为其 IDNA 版本之后,我将多个域存储到数据库中。我需要知道这样一个 IDNA 转换的域名可以具有的最大长度,以便我可以定义数据库字段的最大长度。
已知事实:
现在,我知道域名(包括任何子域)中的最大字符数是 255 个字符。
我丢的地方:
乍一看很容易,但是……这是否意味着国际字符的常规 ascii 字符(想想 UTF-8 编码)?
举个例子:当我忽略“ü”是一个需要更多字节来表示的国际字符时,域“müller.de”有 9 个字符。“müller.de”的 IDNA 版本是“xn--mller-kva.de”,它有 16 个字符。这表明最大长度肯定存在差异,具体取决于“是否”它是否被 IDNA 转换。
根据它们所指的字符类型,最多 255 个字符可能是国际字符版本、IDNA 转换版本,甚至两者兼而有之。
这就是我失去它的地方......尤其是,因为我必须考虑到并非所有域都是理智的,并且像“öüßüöäéèê.example.äöüßüöäéèê-äöüßüöäéèêê.test.äöüßüöäéèêêê.com”之类的东西更糟糕的是被期望。
因此,“猜测”和“希望最好”不是一种选择。我需要确定...
问题是:
基于已知的事实,域名(包括任何子域)中的最大字符数为 255 个字符...... IDNA 转换域名的最大长度是多少?
或者他们是否意味着 IDNA 转换版本(punycode)也被限制为 255 个字符(这意味着具有国际/unicode 字符的域实际上在其 unicode 表示中的限制更短,因为他们的 IDNA 转换版本必须尊重 255 个字符限制)?
c# - 如何通过代码启用对 URI-Class 的 IDN/IRI 支持?
我正在尝试为 URI 类启用 IDN/IRI 支持,因为我需要德语变音符号域(例如 www.bücher.de)上的“Uri.IsWellFormedUriString”方法。
我在https://stackoverflow.com/a/6107682/413531发现了类似的问题(取自http://msdn.microsoft.com/en-us/library/system.uri.aspx在“国际资源标识符支持”)但解决方案对我不起作用。我当前的 app.config 文件如下所示:
当我添加
作为最后的另一个孩子,抛出异常:ConfigurationErrorsException - {“Das Konfigurationssystem konnte nicht initialisiert werden.”}
所以我在http://msdn.microsoft.com/en-us/library/system.uri.aspx中进一步阅读了一个偶然发现
Uri 类中的 IRI 和 IDN 处理也可以使用 System.Configuration.IriParsingElement、System.Configuration.IdnElement 和 System.Configuration.UriSection 配置设置类来控制。System.Configuration.IriParsingElement 设置启用或禁用 Uri 类中的 IRI 处理。System.Configuration.IdnElement 设置启用或禁用 Uri 类中的 IDN 处理。System.Configuration.IriParsingElement 设置也间接控制 IDN。必须启用 IRI 处理才能进行 IDN 处理。如果禁用 IRI 处理,则 IDN 处理将设置为默认设置,其中使用 .NET Framework 2.0 行为以实现兼容性并且不使用 IDN 名称。
不幸的是,我找不到使用 System.Configuration.IriParsingElement、System.Configuration.IdnElement 和 System.Configuration.UriSection 的示例。我不知道这些是如何使用的...
所以基本上,我的问题归结为:我想在 URI 类中启用 IDN/IRI 支持,但我不知道该怎么做。配置解决方案对我不起作用,所以我想通过代码尝试,但不知道如何。顺便提一句。我也想知道为什么配置的东西不起作用;)