サーバーへの道

のんびりとサーバ構築する様子を日記にしてます。目的はLinuxの勉強、目標はサーバ運用です。きっと脱線します。

PHP導入~文字化け~

2009-04-13 01:15:43 | Weblog
PHP導入したところ、文字化けが発生してしまいました

症状は
1:PHPをつかったHTMLの表示は文字化けしない。
2:htmlだけの表示が文字化けしてしまう。

そんな人は
一度
/usr/local/apache2/bin/apachectl stop
/etc/rc.d/init.d/httpd restart
としてみましょう。

それでもだめなら・・・
①httpd.confとphp.iniの文字コードの設定を見直しましょう。
②httpdにある「AddDefaultcharset」こいつはかならずコメント化か
削除しましょう。
 HTMLタグで文字コードを設定しても、
 .htaccessで文字コードを指定しても
 AddDefaultcharsetが優先されてしまうみたいです。
③/etc/httpd/conf/httpd.confの文字コード設定も見直しましょう。
 ※/usr/local/apache2/conf/httpd.confの設定は有効じゃない感じがします。

④php.iniは/usr/local/lib/php.iniの設定のはず。
 ※インストールの仕方でちょっと違うのかな?
 ※自分はPHPをダウンロードしてmakeから作成しました。


これが判るためにものすごい調べました。

なんか
/usr/local/apache2/apachectl restart
これじゃぁ、文字化けしてしまうみたいです
PHPと喧嘩してるのかな?と思われ。。。

リスタートしても
停止 [OK]
開始 [OK]
というメッセージが出ないのがおかしい。
という事で、
いろいろ見てみた所、
/etc/rc.d/init.d/httpd restart
これを試してみたわけです。


本当にこれが原因なのかわからないけど、
自分のはこれで解決できました

あとPHPのソースhtmlでPHPコードを書きたいと
いうのと.htaccessの存在やら、
http://kctweb.dip.jp/~grayで表示させようとすると
ダウンロードが始まってしまうやらで
問題がいっぱいだった。。。。


ダウンロードが始まってしまう原因は、
PHPスクリプトのheader関数でコンテンツタイプでtext/html;
がなかった事。

.htaccessはhttpd.confのAllowOverrideの設定を
none から allに変更する事で使用可能になるみたいです。

cgiを使わせたくないとかphpを使わせたくないとか
そういうサーバはallに設定させない方がいいみたいですね



試運転中の
http://kctweb.dip.jp/~gray/
こっちもあわせて情報を更新していこうと思うのでよろしくです