そろそろさくらインターネットも限界かなぁ。

今、何度目かの(汗)ココログ→MovableType切り替えを試行中なのですが。

今回はテンプレートの実装もうまくいっていて、サイトはほぼ完成、後はココログからデータを移行しなおすだけ…なのですが。

どうにも実装サーバである、さくらインターネットの仕様が使いづらくなってきました。

まず、MovableType出力の一部をさらにPHPで加工しようと思ったのですが、ここで文字エンコードの問題が。

MovableTypeの出力はUTF-8っぽいのですが、さくらのPHPはEUC-JPで動いています。php.iniで変更はできるのですが、php.iniの置き場所をApacheに指示できないため、php.iniを全ディレクトリに配置しないといけないようです。

初期状態はともかく、MovableTypeは月ごと、年ごと、カテゴリごと、といった単位でディレクトリを自動生成するので、新しく作られたディレクトリに手動でphp.iniを置いて回る…というのは非現実的。

MovableTypeの出力をEUC-JPにすればよいのだけど、やり方がわからない。プラグインは見つかるのだけど…。もしかして、使用するMySQLに依存?だとすると、MySQLサーバはさくらインターネットの管轄なので、変更は絶望的。

SQLiteも微妙だしなぁ…。

とりあえずPHPでやりたかったのは、「サイドメニューの共通部分をページ表示タイミングで取りこむ」ことだったので、ここはSSIへ逃げて対応。しかし、これによりファイル名がshtmlになってしまうのも微妙な。

専用サーバ契約でroot権獲得してしまえば解決しそうな気もするけど、そこまで資金を投入するサイトでもないしなぁ。

そろそろ、自宅サーバにすることも考えるべきでしょうか。電源周りのバックアップとかが面倒なので、常設サーバは二の足を踏んでいるのですが。

なお、別にココログが不満と言うわけでもないのですが、いい加減メインサイト(最近はBlogのほうがメインと言う説もあるけど、それは放置)とドメイン名を統合しないと、アフィリエイトとかの申請が面倒なので。

その他、ちょっとハマった設定をメモ。

MovableTypeが作るファイル/ディレクトリパーミッションが、さくらのお好みに合わない:

特にPHP化した場合に問題発生。さくらはgroup, otherにwrite権があると、PHPを動かしてくれない。

mt-config.cgiに、"HTMLPerms 0755"と、"DirUmask 0022"(chmod 755相当)を追記して対策。
へたれLinuxユーザなのでumaskよりchmodのほうがわかりやすいのだけど、ディレクトリはumaskでしか指定できないらしい。

文字コード問題:

本文中にも書きましたが、深く考えずにセットアップすると、さくらでのMovableTypeはUTF-8でHTMLを生成するのに対し、PHPはEUC-JPで動こうとする様子。

各ディレクトリにphp.iniを配置し、その中で次のような感じにして対策。過不足は不明だけど、取り敢えずこれで動いているので。

default_charset = UTF-8

mbstring.language = Japanese

mbstring.internal_encoding = UTF-8

mbstring.http_output = UTF-8

mbstring.substitute_character = none

さて、この後データ移行の問題として、「ココログに投稿した画像データは個別にダウンロードしないと、移行先のBlogに移動できない」というのもあるんだよねぇ…。

| | コメント (0) | トラックバック (0)

MovableTypeへの移植メモ:文字化け。

記事タイトルの「~」と一部トラックバックの「~」…とあとナニかが文字化けしてる。

これは、ココログからエクスポートした時点で化けていた。「~」が化けていることから考えて多分、UTF-8の文字コード問題に正面から勝負してしまったのではないかと。

あたしの文体は「~」を多用しているはずなんだけど、とりあえず本文中では化けていないものがあるし、化けている文字の数が少なすぎるので、一律に化けるわけでもないみたい。

タイトルの化けは2箇所のみ、トラックバックはそもそも放置していたSPAMだったので、個別修正(削除)で十分だな、今回は。

#追記
今回の移植分では上記だけだけど、全体を見ると本文でも化け多数。ただ、移植先に格納済みの記事を見ると化けていないので、ココログのバージョンアップ過程で文字コード変換あたりがうまく機能せず、今回化けた可能性が高そう。

インポートは文字コード指定できるけど、エクスポートは指定できないからなー。

| | コメント (0) | トラックバック (0)

MovableTypeへの移植メモ:Blog記事の日付問題。

エクスポート+インポートで移動すると、記事自体に括り付けられている「作成日付(公開日付)」は保存されますが、「更新日付」がインポートした日付になります。

MovableType 4.0のデフォルトテンプレートだと、メインインデックスの記事一覧が、「更新日付」を表示する<$MTEntryModifiedDate$>になっています。このため、インポートした記事は全部同じ日付になってしまう言う問題が発生するのだなコレが。

解決方法:
1回書いた記事をめったに書き換えない、もしくは、書き換えたときに日付を更新する必要を感じないのであれば、<$MTEntryModifiedDate$>(更新日付)を<$MTEntryDate$>(作成日付)に変更すればOK。

記事を頻繁に書き換え、かつ書き換えた日付を表示したいときは…。あきらめるしかないような感じ。
そもそも、エクスポート/インポートのフォーマットに「更新日付」が保存されていない様子。エクスポートについてはテンプレートを自作すれば出力できると思うけど、インポートフォーマットの仕様に無いのではどうしようもないというか。

直接DBに叩き込むようなプログラムを作れば、多分移植できるとは思うけど…。あたしは<$MTEntryDate$>で事足りるので、作るつもりは無いです。

| | コメント (0) | トラックバック (0)

メインサイトのMovableType化。

いったい何度目の正直なのか(2度目です、多分)

MovableTypeがVer.4になり、Blogページのほかに通常HTMLも管理できるようになったので、サイト全体のMovableType化を(今度こそ)進めています。

何が面倒って、ページレイアウトを移植しようとした場合、用意するテンプレートが結構多い上、モジュール化されているので最初は相関関係のHackから始めないといけないってのが…。
いや、全部削除して1から作ってもいいんだけど。しかしこれはこれで、サンプルがなくなってしまうのでどうにも…。

で。
先ほどトップページだけは移植完了!とりあえず記事を更新だ!
と思い、ココログからエクスポートした全記事のうち、前回移行分からの差分を取り出してインポート、そして再構築!

…というところでミス発覚。
今回、メインサイト(HTMLが主)と日記サイト(ココログの完全移植)を分け、メインサイトではサイト全体(メイン+日記)の更新履歴と作品公開を管理しようと思っていたのですが…。

ココログの記事を、メインサイトの方にインポート+再構築しちまったい(爆)

やり直しか…。

あと、問題が1つ。
ココログの機能を使ってCGやら写真やらをアップロード、Blogに張り込むと、その元データは当然ココログ内に格納されます。

が。
これは記事のエクスポート(バックアップ)では取り出せない。そして、記事本体のURLは、ココログのまま。

さてどうしたものか。
URLは、エクスポートしたテキストファイル状態で一括置換するか、インポート後にDBを直接SQLでいじる手もあると思う。まぁこっちはいいでしょう。

問題はココログ内に格納されたデータ実体の移植方法。
とりあえず一緒にエクスポートはできないので、1つ1つ取り出すしかない…のか?オプション指定は無かった気がするし。

エクスポートしたファイルを読んで、ココログから個別にダウンロードするプログラムでも作るか…。

ちなみに、移植途中の新ページは、URLをhttp://www.magicalrabbit.jp/index.htmlとするとアクセスできます。
運用版はindex.phpで、現在.phpを.htmlより優先しているので、通常は見えないはず。

| | コメント (0) | トラックバック (0)