• ベストアンサー

apach 文字化け httpd.conf

apach 2.0.49をインストールし、使用してますが、HTMLを出力すると文字化けします 日本語が文字化けします。 AddDefaultCharset iso-8859-1 も解除し、<html>のところを<html lang="ja">も変更し、 Apacheも Restartで再起動しても、駄目でした。 httpd.confの設定を以前、変更して文字化けが無くなった経験があるんですが、思い出せません。 誰か御存知の方がいらっしゃったら、教えてください。宜しくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4848/10262)
回答No.2

HTMLファイルの文字コードは何を使っていますか?Shift_JIS?utf-8?euc-jp? 方法は大きく2つあって(細かく分けるとたくさん)、 (1) サーバーの設定  (1-A) httpd.conf で AddDefaultCharset Shift_JIS などと設定する  (1-B) .httaccess などで 同様に  (1-*) ほかにも方法はいろいろ (2) HTMLファイルの中に文字コード種類を書き込む <head> タグの中に、<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" /> などと書き込む。それより前に日本語を書いてはいけない。  誤りの例:  <html><head><title>日本語だよ</title><meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" /></head>。。。。 両方で指定すると(2)の方が優先されるはず。

natsuki123456
質問者

お礼

ヘッドに<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> 付ける事と、(1-A) httpd.conf で AddDefaultCharset Shift_JIS と設定する 事で解決いたしました。御親切な御教授、ありがとうございました。

その他の回答 (1)

  • t_ohta
  • ベストアンサー率38% (5083/13283)
回答No.1

そもそもHTMLに文字コードの宣言を書き込んでいますか? HTMLに文字コードの宣言が書かれていれば、サーバの設定に関係なくブラウザは正しく認識してくれるはずですよ。

関連するQ&A

  • 自宅Webサーバにアクセスすると必ず文字化けする

    アクセスありがとうございます。 Red Hat Linux8.0で自宅Webサーバを構築したのですがインターネットエクスプローラでアクセスすると必ず文字化けしてしまいます。 インターネットエクスプローラの「表示」メニューの「エンコード」が「西ヨーロッパ言語(ISO)」になってしまうのです。 これを「日本語(自動選択)」などにすれば文字化けが直るのですが他のページにジャンプすると再び文字化けが発生してしまうという始末です。 これでは快適なウェブブラウジングなんて、できませんよね。 htmlファイルをアップロードするときにEUCコードにしたりJISコードにしたり試してみたのですが文字化けは直りませんでした。 また「apache」の「httpd.conf」ファイルをいじってみたのですが、まだ文字化けは直りません。 設定ファイルは次のように書き換えたりしました。 AddDefaultCharset ISO-8859-1の文字列を #AddDefaultCharset ISO-8859-1とコメントアウトしたり AddDefaultCharset shift_jisとしたり AddDefaultCharset EUC-JPとしたり AddDefaultCharset noneとしたり AddDefaultCharset ISO-2022-JPとしたり またLanguagePriority en da nl et fr de el it ja kr no pl pt pt-br ltz ca es sv twの項目で「ja」を先頭に配置して LanguagePriority ja en da nl et fr de el it kr no pl pt pt-br ltz ca es sv twとしたりしてみましたが文字化けは直りませんでした。 また「httpd.conf」を変更後は1回1回、/etc/rc.d/init.d/httpd reloadコマンドを実行してインターネットエクスプローラも1回1回、起動し直して試したのですが、やはり文字化けは直りませんでした。 なぜでしょう?? 何か忘れていますか。 また他にどのような設定をすれば文字化けを解消できると思われますか。 何か心当たりのある方、どうか教えてください。 よろしくお願いします。

  • httpd.confの編集後は?

    宜しくお願いします。 レンタルVPSサーバー Apache2.2.X系 Apacheは起動していますが、それからが・・・分かりません。。。 Webサイトを公表したいと思っています。 そこで、まず初めにhttpd.confを編集した方が良いとサイトや本で書いているのですが、どうやって編集したら良いのか悩んでいます。 根本的に間違っているかも知れないのですが、自分的にはTeratermを開き、suでroot管理者としてサーバーにアクセスしました。 そして、[root@XXXXXXXXXXX user]# vi /etc/httpd/conf/httpd.conf でhttpd.confを開きました。 色々なサイトや本を参考にhttpd.confの必要な初期設定を行ったのですが、どうやって編集したhttpd.confをサーバーに保存するのか?またapacheを再起動させないと反映されないと書いていたのですが、何時のタイミングで/etc/init.d/httpd restartを実行するのか? ご指導お願い致します。 (1)httpd.confの編集の方法は? (2)編集後にApacheを再起動させるタイミング、方法は?

  • httpd.confへの書き方

    .htaccessで以下のように書いています。 <FilesMatch "\.(html|htm)$"> SetEnvIf Accept-Language ja OKL order deny,allow deny from all allow from env=OKL </FilesMatch> これをapache2のhttpd.confに書いたところ、SetEnvIf Accept-Language ja OKLの行をちゃんと認識してくれません。jaの部分をenとかにしてもアクセス出来てしまいます。この行をhttpd.confに書くにはどのように書けばいいのでしょうか。

  • Apachenの文字化けについて

    Solaris10にapche2.2.14をインストールし、テストとしてHTMLに<meta http-equiv="content-type" content="text/html; charset=utf-8">を記述して確認すると文字化けしてしまいます。 IE or firefoxのエンコードを「日本語(EUC-JP)」に変更すると直るのですが。 色々、Googleで調べて設定を変えてみたのですが、結局うまくいきません。勉強不足で申し訳ありませんが、教えていただけたら幸いです。 よろしくお願いします。 httpd.conf #Language settings Include conf/extra/httpd-languages.conf httpd-languages.conf AddDefaultCharset EUC-JP or AddDefaultCharset Off←この設定が、無くなったような感じがいます。 LanguagePriority ja en da nl et fr de el it ko no pl pt pt-br ltz ca es sv tw

  • PHPとApacheの連携で、困ってます。httpd.confどこにあるのでしょう?

    PHPの設定をしました。Apacheのインストールもしました。PHPとApacheの連携を行う必要があるのですが、Apacheの設定ファイルであるhttpd.confを編集する必要があり、「%APACHE\HOME%/conf」フォルダのhttpd.confを変更しなければならないのですが、httpd.confと、「%APACHE\HOME%/conf」フォルダがどこにあるかわかりません。わかる方教えてください。大変困っています。よろしくお願いします。

    • ベストアンサー
    • PHP
  • Apache2.2での文字化けが直せません

    Apache2.2.15をインストールし、「独習PHP」に従って設定をしたのですが、日本語が文字化けします。 httpd.confで変更したのは以下の部分です。 LoadModule php5_module "c:/php/php5apache2_2.dll" Addtype application/x-httpd-php .php (AddDefaultCharsetは、調べてみた所2.2系から使われてないらしいので、追加していません) php.iniの設定も間違いなく行いました。 また、<head>内に<meta http-equiv="Content-Type" content="text/html; charset=euc">などと埋め込んだりしてもだめでした。 どうぞよろしくお願いします。

    • ベストアンサー
    • PHP
  • HTTPプロトコルについて(文字化け。)

    No.656466の質問「文字化け。」 で「サーバーの設定とは関係ありません。 」 と自身満々に回答してしまったものです。。。 (質問者の方には申し訳ない) 私はHTTPプロトコルはポート80にgetコマンドを送って 単にhtmlデータを受け取るだけだと勘違いしていたのですが No.656466の回答にapacheのconfファイルのAddDefaultCharsetを変更することで 文字コードの判定を行えるような事を書いてあったのですが apacheはAddDefaultCharsetをconfファイルで指定してやることで どういった動作をしてブラウザとやりとりしているのでしょうか? 宜しくお願いします。

  • ホームページの文字化け

    お世話になっています。 検索しましたが、引っかからなかったので投稿します。よろしくお願いいたします。 環境はRedhat9.0、apache2.054を使用しています。 自宅でホームページを運用しようと考えているのですが、作成したindex.htmlを開くと文字化けが発生します。以前は問題なかったのですが、1ヶ月ほど前にcgiを導入してからこのような現象になったと思います。 ページのデフォルトエンコードが西ヨーロッパ言語(ISO)になっている様子で、エンコードを変更すれば文字化けは直るのですがページの更新をかけると現象が再現します。 自分で調べては設定を見ましたが、現象が改善しませんので御教授お願いいたします。 現在の設定環境は以下の通りになります。 /var/www/html/index.htmlに下記追加 <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> httpd.confを編集 #AddCharset ISO-8859-1 .iso8859-1 .latin1 #AddCharset ISO-8859-2 .iso8859-2 .latin2 .cen #AddCharset ISO-8859-3 .iso8859-3 .latin3 #AddCharset ISO-8859-4 .iso8859-4 .latin4 #AddCharset ISO-8859-5 .iso8859-5 .latin5 .cyr .iso-ru #AddCharset ISO-8859-6 .iso8859-6 .latin6 .arb #AddCharset ISO-8859-7 .iso8859-7 .latin7 .grk #AddCharset ISO-8859-8 .iso8859-8 .latin8 .heb #AddCharset ISO-8859-9 .iso8859-9 .latin9 .trk 上記をコメントアウト AddDefaultCharset off  追加 LanguagePriority ja  のjaを先頭に変更 /var/www/.htaccess  を追加し、下記記入 AddType "text/html; charset=ISO-2022-JP" html /etc/sysconfig/i18n LANG="ja_JP.eucJP" SUPPORTED="ja_JP.eucJP:ja_JP:ja" SYSFONT="lat0-sun16" SYSFONTACM="8859-15" 長文になりましたが、上記より改善方法がわかる方御教授お願いいたします。

  • APACHEで参照するhttpd.confの場所を変更する方法がわかり

    APACHEで参照するhttpd.confの場所を変更する方法がわかりません。 とある理由で以下のような変更をしたいのですが良くわからず行き詰ってしまいました。 /etc/http/httpd.conf⇒/usr/local/apache/httpd.conf としたいのですが、どこでhttpd.confのディレクトリを設定しているかわからず困っています。 参照するhttpd.confの場所を変更する方法を教えてください。

  • サーバの字が文字化けします。

    redhat9+apache2でサーバを構築したのですが、 サーバ上でのファイル名が文字化けしてしまいます。 (apacheはソースからインストールしました) ツールバーの表示からエンコードを変更すれば 正しく表示されるのですが、 できれば最初から、文字化けしないようにしたいです。 何度か調べて、httpd.cnfの #AddDefaultCharset~や LangagePriority、 また、php.iniの mbstringなどを訂正したのですが、 変わらず西ヨーロッパ言語のままです。 わかる方いらっしゃいましたら よろしくお願いします。

専門家に質問してみよう