nginx 配置文件中的正确编码/字符集是什么,以显示 HTTP 身份验证消息中的重音字符?
例如这个配置文件:
server {
...
location / {
auth_basic "Zone sécurisée";
auth_basic_user_file .htpasswd;
}
}
在 Firefox 的提示窗口中显示:
“安全区”
在网上找不到真正的解决方案或解释。我尝试é
在 conf 文件中用é
、by &
、by é
、by替换或在字符串开头=C3=A9
添加charset utf-8
指令或,但没有任何效果!=?UTF-8?
官方 nginxdoc,谈论“字符串”,而没有关于重音字符编码的更多解释。
.htaccess
注意:我对 Apache 的类似文件没有问题
答案1
RFC 7617第 3 部分
这'领域'参数携带的数据可以视为文本;但是,[RFC7235] 没有定义可靠传输非 US-ASCII 字符的方法。这是一个已知问题,需要在该规范的修订版中解决。
realm
参数是您在指令中输入的字符串auth_basic
。因此,无法提出任何建议,但请坚持使用 ASCII。