Entry

Movable Type ダイナミックページの修正

最近、Movable Type 5にアップグレードした時に、動的生成ページが表示されなくなり、以下のようなメッセージが表示されるようになった…という不具合を、1ヶ月近く放っておいた。

#0 /virtual/xxxx/public_html/melog.info/mt/php/extlib/adodb5/adodb-active-record.inc.php(494): adodb_throw('pdo', 'ADODB_Active_Re...', -1, 'No primary key ...', 0, 0, Object(ADODB_pdo))
#1 /virtual/xxxx/public_html/melog.info/mt/php/extlib/adodb5/adodb-active-record.inc.php(402): ADODB_Active_Record->Error('No primary key ...', 'UpdateActiveTab...')
#2 /virtual/xxxx/public_html/melog.info/mt/php/extlib/adodb5/adodb-active-record.inc.php(136): ADODB_Active_Record->UpdateActiveTable(false)
#3 /virtual/xxxx/public_html/melog.info/mt/php/extlib/adodb5/adodb-active-record.inc.php(198): ADODB_Active_Record->__construct('mt_blog_meta')
#4 /virtual/xxxx/public_html/melog.info/mt/php/extlib/adodb5/adodb-active-record.inc.php(228): ADODB_Active_Record->hasMany('mt_blog_meta', 'blog_meta_blog_...', 'ADODB_Active_Re...')
#5 /virtual/xxxx/public_html/melog.info/mt/php/lib/class.mt_blog.php(134): ADODB_Active_Record::ClassHasMany('Blog', 'mt_blog_meta', 'blog_meta_blog_...')
#6 /virtual/xxxx/public_html/melog.info/mt/php/lib/class.baseobject.php(308): require_once('/virtual/xxxx/p...')
#7 /virtual/xxxx/public_html/melog.info/mt/php/lib/mtdb.base.php(258): BaseObject->blog()
#8 /virtual/xxxx/public_html/melog.info/mt/php/mt.php(645): MTDatabase->resolve_url('/archives/2006/...', 2)
#9 /virtual/xxxx/public_html/melog.info/mt/php/mt.php(488): MT->resolve_url('/archives/2006/...')
#10 /virtual/xxxx/public_html/melog.info/mtview.php(7): MT->view()
#11 {main}

正直、何のことかさっぱりわからん!色々試してはみたのだけれど、そもそもこのMovable Typeというツールが静的ページを前提としているためか、ダイナミックページを使おうと思っても設定がイマイチ分かりにくく、最初の設定時にこういったエラーがよく発生していたように思う。
こういうとき、ユーザー数の少ないツールを使ってると不便だなぁ。情報がちっとも出てこない。

そんなわけで、対策としてはダイナミックページの生成やめることにした。…そもそもダイナミックページの使用したのは、再構築に時間がかかりすぎるという難点があったためだったので、これをやめるのもちょっと抵抗があるのだけれど、背に腹は替えられない。

今のサーバは最近動作が重いし、Movable Typeも情報が集まりにくくなってきたため、サイトの運用自体に少々問題が出てくるようになってしまった。
サイト自体を止める気はないのだけど、サイトの移転とか色々考えたりする今日この頃。別にドメイン自体はmelog.infoから変わるわけではないので、こちら側の運用の問題です。


Comments (0 件)

コメントを残す

メールアドレスが公開されることはありません。