我有以下问题。我创建了一个丹麦网站flaatinfo.dk,flåtinfo.dk也可以访问它。
域管理器给了我一个flaatinfo.dk证书,但是说他们不能为flåtinfo.dk生成一个证书,因为它包含一个特殊的字符。
是否有一种方法(在nginx设置中)可以将所有HTTPS请求从flåtinfo.dk重定向到flaatinfo.dk?
HTTP重定向似乎运行良好,但如果我尝试像这样重定向HTTPS,则会在浏览器中获得证书错误:
server {
listen 443 ssl;
server_name flåtinfo.dk www.flåtinfo.dk;
return 301 https://flaatinfo.dk$request_uri;
}发布于 2022-07-20 10:47:54
www.flåtinfo.dk是一个国际化的域名。
应该使用
server_name指令中的ASCII (Punycode)表示来指定域名( in )
因此,您应该在NGINX配置中将其指定为xn--fltinfo-fxa.dk。
至于为什么您的普通HTTP重定向仍然有效,这可能是因为它与任何其他域不匹配,因此NGINX最终不得不选择它为默认值。
我在浏览器中得到证书错误
当然,由于您没有IDN的TLS证书,浏览器将发出警告。您需要获得IDN的TLS证书才能消除警告。让我们支持为IDN颁发证书,并且是免费的。
https://stackoverflow.com/questions/73047570
复制相似问题