謎解きウェブ

なぜなにどうして。

MT4管理画面エディタのAjaxインターフェースがドメインにシビアで困った

text:

初めてMT4案件をやったときに、お客さんの環境で管理画面がどうにもこうにも異常な動作をして困ったけど、結果的には仕様だったというオチ。

結論から書くと、MT4の管理画面はmt-config.cgi内のStaticWebPathに定義した以外のドメインでアクセスすると、エディタのAjaxインターフェースが徹底的に動作しません。具体的に例を挙げると

mt-config.cgi

CGIPath http://www.hoobar.jp/mt/
StaticWebPath http://www.hoobar.jp/mt/mt-static

と定義したMT4システムの管理画面にアクセスする際

管理画面
http://hoobar.jp/mt/mt.cgi

でアクセスすると記事の新規作成または編集画面で、メニューのプルダウンが動作しない・[本文] や [続き] などのタブが反応しない・テキストボックスの入力編集が出来ないなど、エディタのAjaxユーザインタフェースが崩壊します。

いろいろ調べまわったところ、実はこれはMTの仕様上の問題で、シックス・アパートのサポート情報にもアップされているものでした。

エントリーの編集画面で、本文を編集出来ません
http://www.sixapart.jp/support/mt4/error/post_9.html

こちらではwww.hoobar.jp/mt/mt.cgiで管理画面にアクセスして、主要ブラウザでの動作確認もしていたのですが、お客さんがhoobar.jp/mt/mt.cgiでアクセスしてしまっていたため正常動作せず。ヤーバーババイ!って相当あせって危うくお客さんのPCの常駐プログラムが原因ではないかなど余計なことも考え始めていたところでした。

最近はwwwサブドメイン省略でのアクセスを許可というか設定しているサーバが多いと思うのですが、MT4案件ではリダイレクトの設定をちゃんとかけておいたほうが良いのですかね。

このエントリを書こうと思いつつタイミングを逃してオタオタしているうちにMTOSMT4.1もリリースされてしまったのですが、この点はもしかしたら解消されているかも。

なんつーか、個人的には仕様という名の不具合だと思いたい。

2007.02.04 ドメイン名省略の絶対パス指定について

realog.orgのreaさんから情報いただきました。MT4.1でも同様の症状が発生してしまうが、コメントでAnonymousさんからいただいている

CGIPath /mt/
StaticWebPath /mt/mt-static

で回避できるとのことです。ただしこの場合はCookieの識別が出来ないためログイン情報を保持出来なくなるというデメリットもあり。