日本語のファイル名

最近FTPサーバに日本語を含むファイル名が上げている輩がいるのだが
大抵のFTPクライアントはファイル名をSJISでアップロードしやがるので、
default-character-setをUTF-8にしてるブラウザやらSamba上から見た場合激しく文字化けします。
対策としていくつか考えてみた。

  • その1

仕方ないのでFTPでUPされるファイル名は全てSJISで管理する。
■メリット
Windowsの大抵のFTPクライアント側は何も気にしないで使用できる。
IEでファイルをダウンロードしても文字化けしない。
■デメリット
ターミナル(Poderosa)でそのディレクトリを覗くと警告がでまくる。
Sambaの文字コード指定が共有ディレクトリ単位でなく全体っぽいのでやるせなくなる。
Linux様の上にまでSJISなファイル名が存在するってどうよ。

  • その2

当然ファイル名はUTF-8で管理し、FTPクライアント
UTF-8対応のものを使うのを強制させる。
■メリット
CentOSのシステム文字コードUTF-8なので素敵。
sambaもUTF-8なので素敵。
ApacheのIndexesもUTF-8なので素敵。
■デメリット
Windowsで使えるUTF-8対応のFTPクライアントが全然無い。(と思ったら最新のFFFTPは問題なかった)
SJISUTF-8が必ず相互変換できる限らないのでファイル名が変わる可能性がある。(まぁ無視できる範囲だろが)
IE7がでは特定の文字があると化ける
IE7UTF-8な日本語ファイル名を開こうとするとURLエンコードされたみたいなファイル名に変換されてキモい。
(右クリックから直接保存を選べば大丈夫のようだが・・・少なくともFirefoxでは同じ現象は確認できていない。)

  • その3

FTPサーバをProFTPDに変えてiconvパッチを当てる。
ファイル名はUTF-8で管理する。
■メリット
UTF-8に対応してないFTPクライアントが使える。
■デメリット
めんどくせぇ。


というわけでその2で行きます。
公式のFFFTPが使えるとわかった以上は問題もあるまいて。

ホストの設定ひらいてこうやって指定してくださいな。
今鯖に上がってる分はconvmvでUTF-8に一括変換しといたので問題なし。
あとなるべくIndexesを見るときはFirefox使ったほうがよさそうですよ。