1

サーバーはデフォルトで Content-type charse ヘッダーを「ISO-8859-1」に設定するように構成されているため、文字セットを UTF-8 に変更するために、次のようにルート フォルダーに .htaccess を作成するように指示されました。 :

AddDefaultCharset utf-8

ルート フォルダではすべて正常に動作し、Content-type が変更されますが、これは PHP ファイルでは動作せず、HTML だけで動作します。なぜですか? 私もこれを試しました:

AddCharset UTF-8 .php

しかし、どちらも機能しません..

4

2 に答える 2

1

この問題に対処しているだけです

この質問は古く、おそらく長い間忘れられていましたが、私はそれを見つけました。他の誰かがそうするかもしれません。

apache.org のドキュメントによると、記載されているデフォルトは次のとおりです。

…応答の content-type がtext/plainまたはtext/htmlの場合にのみ、応答に追加されます

そのため、最初にPHPContent-Type出力がof で正しく配信されていることを確認する必要がありtext/htmlます。

次に、このように明示的に送信されるすべてのファイルが、UTF-8でエンコードされていると宣言して、実際にそうであることを確認してください! ほとんどの人にとってそれは「当たり前」
かもしれませんが、それでも.

AddCharset失敗について:うん!理由はまだわかりませんが、これらの他の考慮事項を
追加して確認することでうまくいきました。AddDefaultCharset

質問者さんの場合の私の推測では...

... PHPAddDefaultCharsetファイルで機能しなかった場合は、何らかの理由で、おそらく同じファイルまたは親ファイルのステートメントが原因で、それらが出力として選択されていなかったことです。text/htmlAddType.htaccess

于 2015-04-25T21:24:05.880 に答える
-1

に以下を追加しようとしましたかphp.ini:

default_charset = "utf-8"
于 2013-02-18T11:29:34.173 に答える