クラウド IDE codeanywhere でのコンテナの不適切な FQDN 設定による Moodle のランタイムエラー

クラウドIDEのひとつ, codeanywhere では, 各コンテナに containername-username.codeanywhere.com という形の FQDN が与えられる. これは, Editor 内でコンテナのコンテキストメニューの Info から表示できる. containername はユーザがコンテナに与えた名称(Editorの左コラムのリストに表示されるもの), username は codeanywhere.com のユーザ名.

codeanywhere.com では, ユーザ名未設定でもユーザ登録を完了してサービスを使用できる. このとき, FQDNはcontainername-.codeanywhere.com となるが, ドット直前の"-"は禁止されている*1. これにより, アプリが正常に機能しないことがあるので, ユーザ名の設定は完了しておくほうがいい.

正常に機能しないアプリの例: Moodle 3

インストールは完了に近いところまで正常に進むが, Moodle HQへのサイト登録ができない. そのあとブラウザからMoodleを使うと, 多くの機能で,

Error. Invalid Response Value Received

というポップアップアラートがでる.

これは, Moodle Web Service が出すランタイムエラーで, Moodle Mobile との関係でよく言及されている. Debug Mode にしても追加の診断が得られるわけではないので, 原因特定が難しいが, username を設定する(そして config.php をそれにあわせて修正する)と消えることが確認できる.

*1:RFC1034