sirius2wpのカテゴリー名などのパスが日本語だった場合のredirect_savelist.jsonの対処の件。
リダイレクト記述リストの方は、URLエンコードしてあげれば大丈夫そう。
まだ.htaccessに入れてリダイレクトはさせてないけど、多分大丈夫。
問題は退避ファイルリストの方。
PC上のファイルで日本語で表示されていなかったのは、json.dump()でensure_ascii=Falseとパラメータをつけてあげれば直った。
PC上のJSONファイルは直ったけれど、サーバーにアップするとCGIは動かない。
サーバー上では日本語の部分がやっぱり壊れるっぽい。
いろいろPythonの日本語というかUnicodeとか文字コードの話をネットで漁ってみたけれど、わかるようなわからないような…。
腑に落ちないまま。
「ftp転送でアップロードしたけれど、そこでコード変換されたのか?」
とftpのせいにしたかったけども、そもそも論で考えが間違っているのでは?と思った。
PCとサーバーで日本語のコードの扱いが同じではないのだから、転送うんぬんよりも、PCのUTF-8の日本語のまま転送するのが間違い?
PCの上のファイルに日本語のまま書くんじゃなくて、エンコードしたバイト列を書いて、それを転送して、サーバー上でそれをデコードするのがいいんじゃない?
時間切れで今日の作業をおしまいにしてから、そう思いついた。
これを試してみることに。
あとCGIがらみで、使い勝手をよくする方法をいくつか思いついてしまったので、それも別途やろう。
ってやることが全然減っていかない。