サーバーにある日本語のSIRIUSファイルが移動できない件、実際に動かしてみて、一応CGIでファイルを移動させることはできた。
ただ、CGI側からファイル名を指定するのはできなかった。ファイルシステムのエンコーディングがわからないからなのか、うまくいかなかった。
なので、やっぱりlistdirで取得したリストをfsencodeしてUTF-8に変換して、移動対象か比較することで移動するファイルを見つけることにした。
次に日本語を含むURIのリダイレクトだけど、リダイレクト記述はURLエンコードしてあるのじゃだめだった。
404になる。
で、リダイレクト記述に日本語を書いておくとちゃんとリダイレクトしてくれる。
URLデコードしてからリダイレクトのチェックをする感じだな。
ということで、結局リダイレクトも退避ファイルリストと同様に、redirect_savelist.jsonには日本語で記述することになる。
で、redirect_savelist.jsonに、日本語を直接書いておけないかを試してみたけど、どうもうまくいかない。
それをできるように追求するのは、今は必要じゃない。
実際、sirius2wpからファイル、CGIでファイルにアップロードしてサーバ上のファイル、CGIでファイルを読んで使う、っていう経路を考えると、不確定要素が多すぎるし。
最初にやった、unicodeにエンコードして、それをそのまま文字にしておいてファイル化して、使う際にデコードしてUTF-8に戻すのが一番確実。
少なくとも今のオレには。
というのを判断するところまでで、修正~評価は明日。