• ベストアンサー

apachでのWebページの公開

apacheで個人Webサーバーを構築しようと思っています。本を何冊か参考にしながら見よう見まねでチャレンジしているのですが、うまくいきません。 僕の理解している限りでは、 1・固定IPアドレスをもっていなければ ダイナミック  DNSサービスでドメイン名を取得。 2・「DiCE」などのIPアドレス更新ツールで、IPアド  レス変更時のDynamicDNSサーバーのアップデートを設  定。 3・httpd.confファイルの「ServerName」と 「ServerAdmin」の項目を、取得したドメイン名に修正。   以上で外部からの接続が可能になると思っていたのですが、ダメみたいです。初歩的な質問でもうしわけございませんが、どなたがアドバイスを頂けないでしょうか? ちなみに、パソコンは1台でLANに繋げたりはしていません。環境はOSはMEで、他にはADSLのレンタルモデムがあるだけです。

質問者が選んだベストアンサー

  • ベストアンサー
  • kaihou100
  • ベストアンサー率83% (10/12)
回答No.8

 返答が送れて申し訳ないです。  下のいくつかのアドバイスに対する返答を読んでいて気づいたのですが、koolさんがADSLモデムと呼んでいるものは、もしかしてADSLルータなのではないでしょうか?  「ADSLモデムから割り振られるローカルIP」というのが非常に気にかかります。  もし、routerで、Global AddressとLocal addressを変換する機構を使っている場合…一般的にはNATを使うものだと思いますが…は、変換機になっている物(この場合、多分ADSLモデムでしょう)で、フォワードの設定をしなければならないはずです。  ですから、「ポートフォワーディング」または「IPフォワード」(人によって表現が揺らぎます)あたりのキーワードをキーにして、ADSLモデムのマニュアルをみてみては如何でしょうか?

kool-JT
質問者

お礼

ご回答ありがとうございます。しばらく離れており、お礼を申しあげるのが大変遅くなりました。申し訳ありません。 kaihou100さんのご指摘の通り、僕が「ADSLモデム」と呼んでいたものは「ADSLルータ」でした。マニュアルには「ADSLモデム」としか書かれていないのに、機能的には「ADSLルータ」なのですね。ど素人丸出しです(>0<) 「静的IPマスカレード」などの設定をやりなおしたところ、ようやく作動させることができ、Tomcatやmysqlなどとも連携をとれるようになりました。ほんとうにありがとうございました。 自分でサーバーを立てたり設定を変更したりすることは、いろいろ手を尽くして知らない知識を得ることであり、大変勉強になることなんだなとつくづく感じました。これからもいろんなことにチャレンジしたいと思います。

その他の回答 (7)

  • 7_11shop
  • ベストアンサー率25% (42/168)
回答No.7

いまので、FTPサーバーは構築できるって ことがわかりましたよね。 では、もうやったかと思いますがftp://の部分を http://に直して、同じIPでやってみてください。 だめですか? となると、ほかの方が答えてくれたように、 やはり80ポートが閉じてるか、それ以外ですと、 APACHIが原因になります。 80ポートが開いているかどうかとなると ポートスキャンが有効なのですが、 ここでは紹介しかねます。 あとはAPACHIのはじめの設定で、FTPサーバーソフトで 表示されたIPを入れて、もう一度入れなおしてみてください。 これまででわかったことを最後にまとめておきます。 APACHI自体は正常に動いてる←インスト失敗?設定ミス?グローバルIP違い? FTPサーバーは動く←ポートの問題? アッカでのサーバー設置は実績がある。←プロバイダの問題ではない 以上です。 おそらく、グローバルIPでアクセスできるようになれば、 その他の問題は解消されると思います。 また、localhostや、プライベートIPでアクセスできることは ご存知かもしれませんが、ネットワークを介してアクセスしていないので、 APACHIの動作確認にしかなりません。 オフラインでもアクセスできますから、はい。 私の友人はプライベートIPしかもっていなかったために、 サーバー設置ができませんが、今回の場合は、 HTTPサーバー設置は不可能ではないです。 あきらめずにがんばってください。

kool-JT
質問者

お礼

ftp://の部分をhttp://に直して同じIPでアクセスしてみました。プライベートIPでしたので、ちゃんと表示されました。http://グローバルIPはやはりダメでした(> <) 7_11shopさん、本当にお世話になりました。もう一度、まとめて頂いた問題を整理して考えてみたいと思います。何日もこれにかかりっきりでヘコみそうにもなりますが、まだまだです。あきらめずに頑張ります。 ありがとうございました。

  • 7_11shop
  • ベストアンサー率25% (42/168)
回答No.6

原因をつぶしていくしかなさそうです。 まずは、 http://hp.vector.co.jp/authors/VA002682/download.htm#download ここのページからFTPサーバーツールをダウンロードしてください。 そして、インスト→起動します。 設定→ユーザー設定でANOYMOUSを編集。 ユーザー名の隣にある有効にチェックを入れてください。 そして編集を終了させる。 で、はじめの画面にある、IPアドレスを FTPソフトでもブラウザでもよいんですが、 ftp://xxx.xxx.xxx.xxx/ の形式でアクセスしてみる。 ※xはもちろん変えてね。 ここでCドライブが表示されれば、、いやされると思っています。 表示されたら、APACHEのソフト側だけを考えればいいんですが、 表示されないとなると、PINGでデータが返ってきてるから、 理論上、公開できるはずだから、ソフト側じゃないとすると、 おかしいなぁ。うーん・・・

参考URL:
http://hp.vector.co.jp/authors/VA002682/download.htm#download
kool-JT
質問者

お礼

7_11shopさん、こんばんは。何度もアドバイスを頂いておりまして、本当にありがとうございます。 早速、「Tiny FTP Daemon」をダウンロードして設定し、ftp://xxx.xxx.xxx.xxx/でアクセスしてみました。 結果はご想像のとおりで、Cドライブの内容が表示されました。 診断くんに現在表示されているIPでPINGを打ってみると Packets: Sent =4,Received =4, Lost =0(0% loss), で Minimum =0ms, Maxmam =0ms, Average =0ms ということなんですが、0msというのは気にしなくてもいいのでしょうか?

回答No.5

あなたがまさしくやろうとしていることを既に実行している者です。 OSは何でしょうか? たとえばRed Hat Linuxだったりすると、デフォルトでファイヤーウオールが働いています。httpのポートは初期状態では開いていません。だから localhost もしくは 127.0.0.1 ではアクセスできても外部からはアクセスできません。 もし Linux だとしたら上記のようなことも考慮してください。Windows だったらまた話は違いますが…。 ボクが以前に回答したので、同じ質問(Linux)がありますので参考にしてください。 >3・httpd.confファイルの「ServerName」と 「ServerAdmin」の項目を、取得したドメイン名に修正。 これは関係ありません。

参考URL:
http://www.okweb.ne.jp/kotaeru.php3?q=277645
kool-JT
質問者

お礼

ご回答ありがとうございます。 上記URLのほうも参考にさせていただきました。自分はWindows Me を使っており、Linaxの知識がないものですから、貴重なご意見をあまり有効に活用することができなくて申し訳ないです。 前の質問者の方の場合には、ファイヤーウォールによってポート80が閉じられていたということですよね?自分はMeをADSLモデムに接続しているだけで、ファイヤーウォールはありません。レンタルのモデムのマニュアルにもファイヤーウォール機能の項目はありませんでした。セキュリティーソフトとしてNorton AntiVirusをいれていますが、違いますよね? httd.confファイルの「Port」項目はデフォルトの80のままです。しかし、モデムもしくはポートの設定の問題として進めていった方がよろしいのでしょうか?

  • 7_11shop
  • ベストアンサー率25% (42/168)
回答No.4

PINGはちゃんと返ってきてるみたいですね。 すこし整理させてください。 グローバルIP(と思われるもの)もしくは、winipcfgで 表示されているIPでブラウザからアクセスした場合に、 「あなたの予想に反して」 ってページが見れていると 考えてよいのでしょうか? それと、 http://www.taruo.net/e/ 上記にアクセスしたときに表示されるIPは、 グローバルIP(と思われるもの)と、winipcfgで 表示されているIPのどちらになりましたか? もしくは、どちらでもないですか?

kool-JT
質問者

補足

情報を整理しきれないままお伝えしてごめんなさい。 プロバイダに確認してみました。グローバルIPなのかどうかわからなかったIPは、グローバルIPで正しかったようです。winipcfgで表示されるIPは、モデムから割り振られるプライベートIPでした。 グローバルIPでブラウザからアクセスすると、「サイトが見つからないか、DNSエラーです」とエラーメッセージが出ます。プライベートIPでアクセスするとindex.htmlがちゃんと表示されます。同様に"127.0.0.1"と"localhost"でもアクセス可能で、PHPで書いたプログラムも動作します。 "確認くん"では、REMOTE_ADDRと判定の項目にグローバルIPが表示されていました。これはダイナミックDNS設定ツールで表示されているIPと同じです。 そこで同時刻に、PING「ドメイン名」を打ってみたのですが、表示されていたIPが確認くんで表示されたIPと若干異なっていました。PINGで表示されるIPって、グローバルIPですよね?またわからなくなってしまいました。 Apacheの設定よりも、モデムかダイナミックDNS設定ツール(DiCE)の設定に問題があるということなのでしょうか?

  • kaihou100
  • ベストアンサー率83% (10/12)
回答No.3

 やりたいことは、dyndnsで参照されることを期待した、 公開WebServerを立てたいって事ですね?  では、以下2点がうまくいくか試してみてください。 1. ドメイン名でアクセスできるかどうかの確認 PING [ドメイン名] で確認します。そのとき、ドメイン名と 関連付けられたIPが表示されますので、winipcfgコマンドで GlobalIPと一致しているか確認してください。  ここで、何かが違っていたら、DynDNSの設定の問題が あるでしょう。 2. http://127.0.0.1 を表示させる。  ブラウザで見れば充分です。「あなたの予想に反して」 みたいな文字列が見れれば、Apacheは動作しているはず。 この場合、悪いのはVirtualHostとかのApacheの設定に なると思われます。  もし、うまくいかなかったのなら、Apacheがうまく立ち 上がっていないのでしょう。Apacheを再Installするなりで 対応してみると宜しいかと存じます。

kool-JT
質問者

お礼

ご回答ありがとうございます。 ご質問頂いた点について確認してみました。 1.  PING[ドメイン名]で表示されたIPは、グローバルIPでした。winipcfgコマンドで表示されるIPと異なっていたのでプロバイダに確認したところ、winipcfgで表示されるIPはプライベートIPだということでした。これでよいのか、やはりDynDNSの設定がおかしいのか、よくわかりませんでした。 2.  http://127.0.0.1 または http://localhostでは問題なく作動します。 http://[プライベートアドレス] でも問題なかったのですが、http://[グローバルアドレス] では接続できませんでした。 グローバルアドレスでアクセスするというのはモデム外部からの接続になるのでしょうか? 内部的には動作しているので、外部からのアクセスに対するモデムとPC間の設定に問題があるのかなと思ってみたのですが、自信がありません。  Apacheのhttdファイルは、「ServerName」と「ServerAdmin」の項目以外では「DocumentRoot」を変更したぐらいで、「VirtualHost」等は変更していません。

  • 7_11shop
  • ベストアンサー率25% (42/168)
回答No.2

だれも回答されてなかったので、 回答しましたが、私も素人同然なので、 それほど期待なさらないでください。 また、kool-JTさんの方がお詳しいかもしれません。 ただ、こういったエラーには興味があるので、 できる限り解決できるようにがんばってみます。 APACHIではじめに入れるIPは何を入れても 大丈夫なはずです。なので、任意プライベートIP でアクセスできなくても心配はいらないと思います。 で、今、自分が接続しているグローバルIPは わかりますよね? でしたら、PING コマンドでデータは返ってきますか? それとお使いのADSLの会社(Eaccess、アッカ、YahooBBなど) を教えてください。

kool-JT
質問者

補足

7_11shop さん、ご協力ありがとうございます。先週からで悩んでいたので、とてもありがたいです。 PINGコマンドの使い方はよく分からないのですが、とりあえず PING xxx.xxx.xxx.xxx でグローバルIP(と思われるもの)を打ってみました。すると Ping statistics for xxx.xxx.xxx.xxx; Packets: Sent = 4, Received = 4, Lost = 0(0% loss), と返ってきました。127.0.0.1 で打ったときと同じ表示でした。 申しあげにくいことに、自分のグローバルIPの確認の仕方がよくわかりません。 DiCE(ダイナミックDNS設定ツール)で表示されるIPを上記の方法で打ち、Lostが0であったということは、グローバルIPであると考えてもよいのでしょうか? それとも、「IP 設定」の画面(Meでwinipcfgファイルを実行たときに表示される)のIPアドレスなんでしょうか?こちらもLost=0でした。 ADSLの会社はアッカです。お手数をおかけしますが、よろしくお願いします。

  • 7_11shop
  • ベストアンサー率25% (42/168)
回答No.1

どこまで、成功しているのですか? 1~3以前に、IPアドレスでアクセスしたら、 Webにアクセスできていると考えてよいのでしょうか?

kool-JT
質問者

補足

実は、1以前に問題がありました。書き忘れていまして、申し訳ありません。 Apacheのインストール時に、 ○Network Domain ○Server Name ○Administrator's Email Address 以上3項目について入力する画面がありました。 まず、Network Domainに入力すべきIPアドレスがわからなかったので、「Apache入門 Win版」(ディー・アート刊)という本を参考に設定を行い、Network Domain の項目には例として書かれていた任意のプライベートIPアドレスを入力してみました。 WebブラウザからこのIPアドレスにアクセスすると「サーバーが見つからないか、DNSエラーです」というエラー画面が表示されます。 まず、この時点で間違っているのではないかと思うのですが、修正の仕方がわかりません。DiceのCheckIPに表示されているIPでアクセスしてみましたが、これもダメでした。 "localhost","127.0.0.1"でアクセスする分には問題ありません。 おそらく、くだらない質問なのだとはおもいますが、よろしくお願いします。

関連するQ&A