多分他の方も同じ方法を取っているのだと思いますが...
当方も学外からと学外からの二つのアクセス経路に対応させるための対応をとっています.万が一,学外からのアクセスがネットワーク機器等の故障で不能になった場合にも学内での利用が可能になるようにするための保険です.
どうしているのかといえば,config.php以外はまったく完全に同一なMoodleフォルダを2つ用意しています.htdocs/moodleとhtdocs/mech/moodleの二つ.mypc.example.com/moodle/index.phpが学内用,www.example.com/mech/moodle/index.phpが学外用です.もちろん,MySQL, moodledataフォルダは両方で共用しています.ちょっとHDDが勿体無いかも知れませんが,こもれまた保険だと思えばそれほど無駄でもありません.
このような話でよかったでしょうか?
また、学事が増えました。苦笑
いえいえ,お役に立てれば幸いです.
それはそうと,船橋情報ビジネス専門学校というのは,JR船橋駅北口にある専門学校ですか? 私の実家が芝山なので,年に数回,その前を通ります.世の中,狭いですね.
メール配信されると思うとちょっとはずかしいので、
白井様のメルアドに個人的にメールいたします。
(編集 Tatsuya Shirai - 最初の投稿日時 2008年 04月 24日(木曜日) 06:42)
すみません,ちょっと個人的情報過ぎましたね.
編集させて頂きました.(白井)
1 イントラ内にDNSサーバを構築する
2 クライアント側に設定をする。
という方法があります。
1はイントラ内にBindやWindowsServerなどで構築します。
2の場合は、
Windows系のOSの場合、
c:\windows\system32\drivers\etc\hosts というファイルにイントラネット内でのMoodleサーバのIPアドレスと、ホスト名の組を記述すればよいです。
たとえば、以下のようになります。
127.0.0.1 localhost
192.168.1.14 moodle.hogehoge.com
Unix系のOSの場合、
/etc/hosts ファイルに同様の記述をします。
1の場合や2の場合でも、要するに外部のDNSに名前を問い合わせる前に自分自身(あるいはイントラネット内)で、IPアドレスを解決できればよいという発想です。
大学や高校など教育機関で利用する場合、年度替わりなどで1台の雛型イメージをクローニングして複数台のPCにコピーすると思うので、その際に上記の設定をしておけばイントラ、エクストラ関係なく同じホストを参照できるようになります。
失礼しました.そうですね.MIWAさんの書かれている方法が本当は正しいですね.
ただし,きちんと管理されたネットワーク環境(うちは学内LANのさらに内側にLANを組んでいるので,かなり無秩序です^^;)という前提です.
config.php内の$CFG->wwwrootの設定を三橋さんの場合(特に外部向けが)IPアドレスですよね.グローバルIPとして名前の登録がされていない,のかな?(あまり詳しくない) 名前であればhostsファイルで対応できますよね.
三橋さんのコンピュータのネットワーク構成次第で,どういう方法が適切なのかが決まりますね.もしMoodleサーバが1台と,その他のクライアントPC2,3台という構成ならばBindなどは使わずにhostsの設定が良いですよね.クライアントPCが日によって増えたり減ったりする(学生が個人のノートPCを持ってきてDHCPで接続する)ような環境ならばhostsの手は使えない.
でも,そもそも,ブロードバンド環境ですので,LANの内側(192.168.*.*)からMoodleサーバにアクセスする特別な理由(プロバイダを経由してのアクセスは非常に遅い,など)が無ければ,たとえサーバの真横にあるクライアントPCであったとしても,グローバルIP一本で貫き通すのも選択肢の一つですね.
いま読み直してみると,ネットワーク機器構成(Bフレッツ,ルータ)を変更する前はイントラ,WANともに同じ名前(あるいは同じIP?)で一つのMoodleのインスタンスにアクセスできていたようですね.逆にどのような方法だったのか興味があります.ルータの機能?
私がわかる範囲で参考になれば...
要は、IPアドレスでmoodleのサイトにアクセスするのではなく、ドメイン名をつけてしまったら、WAN側からもLAN側からも関係なくなるのでは? (config.phpにもそのドメイン名を記述する)
三橋さんのプロフィール欄にある、http://61.126.183.177/moodle/ のことですよね? このIPアドレスはOCNが与えている固定IPアドレスではなく、動的なグローバルIPアドレスかと思います。ですから、場合によっては変化する可能性もあります。
それでたぶん、ルータの中にmoodleのサーバーがあると思うので、ルータの80番ポートを開けてそのサーバーに繋ぐようにしているのではないでしょうか。
それで、ドメイン名をつける方法ですが、
- 年間費等をはらってドメイン名を購入 ... お名前.comやムームードメインやVALUE DOMAIN
ただこの場合、動的IPだとまずいかもしれないので、OCNに固定IPでの契約をする必要があるかもしれません。 - 自宅サーバーとかでよく行われる方法として、DynamicDNSを使うという方法もあります。 この場合、ドメイン名にこだわらなければ、無料もあります。
http://www.hi-ho.ne.jp/yoshihiro_e/dice/
http://www.eastcourt.com/domain/dyndns.html
これにより、http://mihashi.mydns.jp/moodle のようにアクセスできるようになるかと思います。
あと、まったく別の方法として、moodleをレンタルサーバー上に構築する方法があります。ただし、PHPやMySQLの条件により利用できるところは限られてきますが。私は実験用として、www.xrea.com (Plus)にCGIモードで動作するphpを使ってサイトを作っています。サブドメイン名で、たとえば、chiba-fjb.xrea.jp とかならドメイン名を別途買わずに運用はできます。
ただ、学校として安定的なサービスを提供されるつもりなら、こちらのMoodle JAPANのサイトで豊富な知識をお持ちの、吉田さんや秋山さんにホスティングをお願いするのもよいかと思います。
私も感じていました。config.phpをIP表記ではなく、別途ドメイン名を取得してDNS表記にするべきだ。と、わたしのサイトは個人の実験用なので、お金はかけられません。Bフレッツにしたので、費用が増えてしまいましたし。
結局、方法は2つですね。
1 無料ドメイン名を別途取得する。ーーーーーこの名でconfig.php を記述する。
2 白井様の方法。ーーーーーーーーmoodleデイレクトリーを別につくる。
この方向で検討してみます。