これはわずかなプログラミング上の問題であり、ネットワーク上の問題です。Windows XPネットワークで接続が拒否されました
ホームネットワークでDjango Webアプリケーションを実行しようとしていますが、ネットワーク上のどのマシンもWebページにアクセスできません。私は幸運なしでポート80と8000で走った。エラーメッセージ:「Firefoxは192.168.x.xのサーバーへの接続を確立できません」私は、クライアントからのpythonのソケットを使用してみました
:
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect (("192.168.x.x", 80))
私はちょうど得る "socket.errorが(10061は、 '接続が拒否されました')"。興味深いことに、ポート25に接続できます。
Windowsファイアウォールは実行されていません。ケーブルモデムの前にNetGearルータ/ファイアウォールがあります。
これを設定するにはどうすればよいですか?
も試してみました:
import urllib2
urllib2.urlopen("http://192.168.x.x/")
同じことを。
Re:「実行中のマシンからDjangoアプリを見ることはできますか?」
はい。それは同じマシン上で動作します。ネットワーク上では機能しません。
私が選択したポート(80,8000など)で実行するようにサーバーを設定することもできます。ネットワーク経由ではなくローカルにアクセスできます。
Q. netstat-ableですか? A.はい:
Proto Local Address Foreign Address State
....
TCP D3FL2J71:http localhost:1140 TIME_WAIT
TCP D3FL2J71:http localhost:1147 TIME_WAIT
私はローカルに2つのブラウザウィンドウに表示ウェブサイトを持っています。
使用明示的な外部ポート(ローカルホストに依存しない):
python manage.py runserver 192.168.x.x:8000
ビンビンビンビンビンビン!私たちは勝者を持っています!
うわー、これはネットワーキングの問題ではないことを嬉しく思います。
「Djangoのアプリは間違いなく192.168.x.xアドレスにだけではなく、ループバックアダプタ上で自分自身をアドバタイズしています?」
Jonも正しい軌道に乗っていたようですが、コメントはDjangoサーバーのセットアップコールを確認する方向に向いていませんでした。
Re: "通常のrunserverの使用法はlocalhostにのみバインドされます。私は恐れています。" 有名な最後の言葉。 – hughdbrown