こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Apacheの日本語名ファイルリンク

質問させていただきます。本来であれば他のところで質問すべきなのでしょうが、リファレンスが英語だったり、似たような症状はあってもピンポイントでは無かったりしたのでお願いします。

Apache2.0.54をインストールし実行しました。index.htmlも書き換え、いざ公開と行こうと思った矢先、日本語リンクがあると、どうも文字化けしてしまうようで、何回やってもForbiddenになってしまいます。

今のところPerlなどはいれず、純粋のHTTPDとして動作していますが、どのようにすればよいでしょうか?英語ファイル名リンクであれば通るのですが、よろしくお願いいたします。m(_ _)m

投稿日時 - 2005-10-14 08:14:53

QNo.1712684

暇なときに回答ください

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

文字コードの関係で、ご自身の環境では日本語ファイルを読み出せても、そのコンテンツを参照する任意の方々の環境では読み出せない場合が十分想定されると思いますので、「ファイル名に日本語を使わない」「日本語を使っているファイル名はアルファベットに書き換え、リンクを張りなおす」が結果として現実的な解になるのではないでしょうか。

日本語のファイル名は、実際にはあるルールにしたがってアルファベットに変換されてコンピュータ上で処理されていますが、その変換ルールが複数存在しています。

Webサーバ上にあるファイルが EUC による日本語ファイル名になっていたとして、ブラウザ側の処理がデフォルトで SJIS とかであれば、別物のファイルであると処理されてしまいます。こういう場合はブラウザ側で EUC にあわせてあげれば読み出せる場合もあるとは思いますが、コンテンツを参照してもらう任意の方にその手間を求めるのもいかがなものかと思うわけです。

http://www.kanzaki.com/docs/jcode.html
http://euc.jp/i18n/charcode.ja.html
http://e-words.jp/w/E69687E5AD97E382B3E383BCE38389.html

投稿日時 - 2005-10-14 08:26:04

お礼

なるほど。Webにアクセスをするのに、文字コードが大きな障壁なのですね。その後調べてみてすごく参考になりました。ありがとうございました。
確かに読み出すほうに労力を求めすぎるのもよくない(アクセシビリティ)と思いますが、一方で最新の技術を使っていったり、直感的に分かりやすいページを作っていくのも大切だと思っています。
ご回答感謝いたします。

投稿日時 - 2005-10-18 14:56:39

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

ぶっちゃけ、インターネットでは世界的な標準として
日本語や中国語などの2bytes文字での表記を認めていません。

一部で日本語のドメイン名の計画が進められたり
ウェブブラウザーとローカルのファイルブラウザーの統合で
日本語ファイル名を扱えるブラウザーはありますが
ウェブサーバーとしては、日本語名を通さないのが普通です。

ちなみに、減って来てはいるけど、英語圏で設計されたOSでは
日本語ファイル名のファイルが存在するだけで
chkdsk等が誤動作するようなトラブルもある。

投稿日時 - 2005-10-14 10:24:40

補足

みなさんありがとうございました。さらに調べた結果、Apache2用の「mod_encording」というモジュールを入れたら解決することができました。しかし、みなさんのご意見が間接的に大変役に立ちました。

これを参考にする人のために参考ページを。
http://webdav.todo.gr.jp/download/

ありがとうございましたm(_ _)m

投稿日時 - 2005-10-18 14:59:41

お礼

ファイルがあるだけで誤動作とは、偉く迷惑な話ですね。欧米製では2byteというのが非常に扱いにくいのでしょうが、日本人には、やはり日本語がしっくり来る場面も多いと思うので、もっと調べてみようと思います。
貴重なご意見有難うございました。

投稿日時 - 2005-10-18 14:59:07

あなたにオススメの質問