
| ・ |
ドキュメントセンターを初めてご利用する方や運営方針についての基本的な姿勢をご覧になりたい方へ。
|
| ご利用の皆様から多く寄せられる質問にお答えしています。 |
|
| ・ |
ディーエーオフィスなどが利用する用語に関する解説を行います。
|
|
|
 |
 |  |
WebDAVにおける日本語関連処理の組み込まれたApache動作についての考察(第2稿) |
検証を進めている最中ではありますが、WebDAVを基本とした日本語処理はブラウザ上の処理についても問題なく行えるもので、信頼性は高まっているものと考えます。
基本的に、UTF-8が使える環境となっていれば問題ないのですが、この中でいわゆるMS SJISに対応することが留意されるべきであります。MS SJISは、SJISの扱いをマイクロソフトのWindows上で都合の良いように改変してあるものです。不特定多数に向けてサービスをするのであれば、このMS SJISに対応することでカバー率は高まります。もちろん、これ以外の環境を持っている人もあり、UNIX上で標準的に使われるEUC-JPなどにも対応すべきです。
○ブラウザ
ブラウザのアドレスバーで日本語を指定することは難しいことです。本来そのようなことはできませんでしたが、インターネットエクスプローラ上ではうまく認識されるようなこともあります。しかしながら、基本的にはこういったことはできないと考えるべきです。
このことから、urlencodeのような表現が必要となり、日本語に関してはアルファベットの組み合わせに変換する必要があります。
○Jef氏のアプリケーションについて
Jef氏の現状のアプリケーションにおいて日本語の処理がうまくいかない原因は、エンコーディングに関する処理がされていないためです。日本語に関する処理を検討してみました。
1点目は、日本語のファイル名がそのままの状態で処理されていることに起因した問題です。日本語の処理は上でも示した通り、アルファベットへの組み合わせに変換する必要があります。この処理がないためにうまく表示できなかったり、リンクがうまく機能しなかったりします。これは、WebDAVが組み込まれているApacheでうまく処理されています。この処理と同じ実装が必要になると思われます。
2点目は、HTML出力時のベースエンコーディング指定です。Jef氏のウェブアプリケーション上でファイルを一覧するとブラウザのエンコーディングを変更しないとファイルが正しく表示されません。これは、出力されるHTMLのエンコーディング指定が適切でないために発生します。UTF-8で出力するように調整する必要があります。
また、こういった処理がうまくいかなかったときのために、何らかのファイル取り出しを行える仕組みが実装されているべきかもしれません。ファイル名で呼び出す形になっていますが、これを番号指定でも読み込めるようにする、などです。
○サーバ上での問題
RedHat9上での処理は、ApacheとOpenSSL、WebDAVを中心にソースコードからインストールを行いました。細かなオプション指定や組み込みを行うためには、RPMなどの仕組みを使わずに処理すべきだと思ったからです。
今回のサーバ導入で認識していた問題は、mod_encodingの組み込みです。このモジュールは、日本語処理に関するもので、Apache上でWebDAVを導入した環境において日本語を扱う場合に必要となるものです。これらの導入を行わなくとも、日本語のファイルは扱うこともできますが、ファイル操作ができなくなったり、いわゆる文字化けとなる可能性が高くなります。ファイルをアップロードした後にファイルが編集できなかったり、削除できないのは、日本語の取り扱いが完全でないためです。このモジュールで解決しています。また、libiconvの導入も併せて行いました。WebDAVにおいて、mod_encodingの導入には、libiconvが必要です。
他にはApache上での基本エンコーディング指定も修正しています。標準ではISOエンコードが指定されており、日本語の扱いがうまく行えません。このため、標準指定を解除しています。
|
[ 関連文書 ]Apache2インストール RedHat9 (2004.07.09)
libiconvのインストール (2004.07.09)
| 文書番号 |
01608 |
| 日付 |
2004.07.09 |
| 参照数 |
731 |
|