w0r*_*art 7 linux centos utf-8 encoding apache-2.2
因此,Adán-y-Eva-50x50.jpg当我尝试访问以下文件时,apacheAd\xc3\xa1n-y-Eva-50x50.jpg会将其转换为并找不到它,即使它存在。
这仅适用于包含 UTF8 字符的文件名。
我已经有以下配置 /etc/httpd/conf/httpd.conf
...
AddDefaultCharset UTF-8
...
IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable +Charset=UTF-8
...
Run Code Online (Sandbox Code Playgroud)
并.htaccess在第一行将其添加到我的根目录中:
IndexOptions +Charset=UTF-8
Run Code Online (Sandbox Code Playgroud)
所有这些都无法加载此类文件。有什么建议?
顺便提一下:我在 CentOS 服务器上运行网站,并预配置了 plesk 面板
fbo*_*ura 11
这里的问题似乎不在于您的浏览器,也不在于您的 Apache 配置。您需要仔细检查系统的区域设置。
您需要检查运行的 apache 语言环境是否启用了 UTF-8。为此,您可以运行以下命令:
$ sudo su -l -c locale www-data
Run Code Online (Sandbox Code Playgroud)
www-dataapache 用户在哪里。检查返回的语言环境是否看起来不像,例如,es_ES.UTF-8这意味着您的语言环境未启用 UTF-8。
如果是这种情况,您可以在 CentOS 机器上更改此配置,/etc/sysconfig/i18n将行更改LANG="es_ES"为LANG="es_ES.UTF-8". 但是,为了使其工作,您的系统仍然需要该语言的语言环境文件。要检查它是否存在,请使用locale -a获取可用的语言环境列表。
如果您的系统没有启用 UTF-8 的语言环境,您可以使用以下命令生成一个:
$ sudo localedef -i es_ES -f UTF-8 es_ES.utf8
Run Code Online (Sandbox Code Playgroud)
并将其设置为您的默认语言。
希望这有帮助!