お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2009-05-18 06:19:38

akiraccho
新しいメンバ
登録日: 2009-05-18

8.10ServerでのApache2の設定について

初めまして、お世話になります。

初心者の板の方がよかったかもしれませんが・・・

グループウェアの機能をもつNetCommons2.1を試したくて職場の古いPCにUbubtu8.10ServerをLAMP環境でインストールし、仕事の合間(休憩時間など)にLinuxコマンドやMySQLなどを学びながら3か月ほど要してようやくNetCommonsをインストール出来たのですが、インストール直後のトップページで文字化けが起こってしまいました。

NetCommonsの公式サイトで質問したところ「Apacheの設定でAddDefaultCharsetを「Off」にしてみてください。」とのアドバイスをいただきました。

そこで、/etc/apache2の中にあるhttpd.conf(このファイルは空行でした)に[AddDefaultCharset off]と書き込み、再起動させましたが、変化がありませんでした。

こちらのフォーラムで検索したところ、「/etc/apache2/conf.d/charset AddDefaultCharset UTF-8に#を付けもした」との書き込みがあったので、同ファイルを読み込んでみたところ、すでに#でコメントアウトされ、試しにこのファイルに前記の記述を追加してみましたが、変化が現れませんでした。

そこで、質問なのですが、「Ubuntu8.10Server のApacheの設定でAddDefaultCharsetを「Off」にするにはどうやったらよいのでしょう?」

最後の編集者: akiraccho (2009-05-18 06:27:29)

オフライン

 

#2 2009-05-23 23:31:10

epii
メンバ
登録日: 2008-12-11

Re: 8.10ServerでのApache2の設定について

おもしろそうなので入れてみたところ、私の環境でも文字化けしてしまいました。
どうも Apache ではなくて MySQL のエンコーディングの設定がおかしい気がしたので、
EUC に設定し直して NetCommons を再インストールしたところ、正常に表示されました。

phpMyAdmin からやったのでアレですが、
ALTER DATABASE データベース名 DEFAULT CHARACTER SET eucjpms COLLATE eucjpms_japanese_ci
でどうでしょう?

オフライン

 

#3 2009-05-26 23:34:12

akiraccho
新しいメンバ
登録日: 2009-05-18

Re: 8.10ServerでのApache2の設定について

epiiさま!

あ・・ありがとうございます。明日にでも試してみたいと思います。

それでついでに、聞いてしまってもよろしいでしょうか?

>ALTER DATABASE データベース名 DEFAULT CHARACTER SET eucjpms COLLATE eucjpms_japanese_ci

これを、/etc/apache2の中にあるhttpd.confに書き込むことでよろしいのでしょうか?それとも他に書き込むファイルが存在するのでしょうか?

無難にphpMyAdminをいじって終了!・・・でもいいような気はしていますが、この際ですからApache2をもう少しだけ理解しておきたい気持ちもあるので・・・

よろしくお願いいたします。

オフライン

 

#4 2009-05-27 01:06:12

epii
メンバ
登録日: 2008-12-11

Re: 8.10ServerでのApache2の設定について

akiraccho による投稿:

>ALTER DATABASE データベース名 DEFAULT CHARACTER SET eucjpms COLLATE eucjpms_japanese_ci

これを、/etc/apache2の中にあるhttpd.confに書き込むことでよろしいのでしょうか?それとも他に書き込むファイルが存在するのでしょうか?

えーと、説明が足りなかったようですね。これは MySQL 文なので、 MySQL に対して実行します。
MySQL が分かっているか心配なので、一応詳しく説明しておきます。

…というか phpMyAdmin からやれば簡単ですし一瞬で終わるのですが、まぁ練習だと思ってやってみてください。

① MySQL サーバへ接続
$ mysql -u root -p
Enter password: ← root のパスワードを入力して Enter (root でなくても権限のあるユーザなら誰でもいいけど)
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 171
Server version: 5.0.75-0ubuntu10 (Ubuntu)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
↑という感じになったら接続完了です。

② NetCommons のアンインストール
前の設定では MySQL が日本語を扱えなかったため、 NetCommons のインストール時に MySQL に挿入されたデータ (TEXT) のうち日本語部分は「?」に置き換えられてしまっているようです(こちらの環境の場合)。
なので一度アンインストールする必要があります。
テーブルがいっぱいあって、いちいち削除するのが面倒なので、データベースごと削除しちゃいましょう。
> DROP DATABASE <<データベース名>>;
<<データベース名>>の部分は NetCommons をインストールしたデータベース名に置き換えてください(以下同様)。
また、文区切りである「;」は文末に必ず記述してください。
Query OK, 1 row affected (0.02 sec)
などと表示されたら、正常にクエリが受け付られたので成功です(これも以下同様)。

③ データベース作り直し
> CREATE DATABASE <<データベース名>>;
次に NetCommons が書き込みや読み込みができるように、権限を与えます。
> GRANT ALL PRIVILAGES ON <<データベース名>>.* TO <<NetCommons 用のユーザの名前>>;

④ 文字エンコーディングの変更
> ALTER DATABASE <<データベース名>> DEFAULT CHARACTER SET eucjpms COLLATE eucjpms_japanese_ci;
ちなみに EUC にしたのは、
http://www.netcommons.org/index.php?action=pages_view_main&page_id=61
の下から二番目が根拠です。
PHP が勝手に変換してくれるような気がするので、UTF-8 とか日本語が扱えそうなエンコーディングなら何でも OK かもしれません。

ここまでできたら、NetCommons へアクセスし、再インストールしてください。
これでキチンと表示されると思います。

オフライン

 

#5 2009-05-28 00:40:35

akiraccho
新しいメンバ
登録日: 2009-05-18

Re: 8.10ServerでのApache2の設定について

epiiさま

お世話になりました。
教えていただいたとおりに、MySQLのコマンドを1行1行打ち込んでやってみました。(Enterを押す度に反応が返ってくるのも気持ちがいいものですね。)

NetCommonsのインストーラが終了して初期画面が出た時に思わず両手をかざしてガッツポーズでした。(昼休みとはいえ、周りに同僚のいる静かな職場ですので、声をあげられなかったのが少し残念でしたが。)

これからは、イントラネット内でNetCommonsの活用方法を模索していくことになりそうです。

ありがとうございました。

オフライン

 

#6 2009-05-31 06:25:04

akiraccho
新しいメンバ
登録日: 2009-05-18

Re: 8.10ServerでのApache2の設定について

いろいろありがとうございました。

ところで、NetCommonsの公式サイトにこんな情報(↓)がありました。
http://www.netcommons.org/index.php?action=pages_view_main&page_id=60
こちらの下から2番目を見ましたら・・・どうやら漢字コードとしてはUTF8を使用するのが正解というか推奨しているようですね。

オフライン

 

Board footer

Powered by FluxBB