4

我在 Windows 上有 WebServer。

在 .htaccess 中:

AddDefaultCharset utf-8
php_value mbstring.internal_encoding utf-8
php_value default_charset utf-8

在脚本中:

header("Content-Type: text/html; charset=utf-8");
ftp_connect("1");

在 UTF-8 浏览器中:

Warning: ftp_connect() [function.ftp-connect]: php_network_getaddresses: getaddrinfo failed: ���� ���� ����������. (

问题 - 为什么错误消息不在 UTF-8 中?

4

1 回答 1

0

似乎 PHP 与来自“getaddrinfo failed:”的错误消息无关。错误表示的字符来自不同的来源 - 这里来自 ftp 服务器应用程序。您已经检查了 Web 服务器和 PHP 端,但没有检查 ftp 服务器的配置。

我最好的选择是检查 ftp 服务器。

您可以检查代码下方的另一条错误消息

header("Content-Type: text/html; charset=utf-8");
ftp_connect("1");
//generate some mess resulting in error info
file_get_contents('forsurenonexistingfile');

如果您的错误信息以正确的字符表示形式出现,那么神秘就消失了。

于 2013-03-12T19:08:52.547 回答