1. ホーム
  2. python

[解決済み】ローカルのDjangoウェブサーバに外部からアクセスする方法

2022-04-19 19:34:32

質問

私は指示に従いました こちら を使用して Django を実行し、正常に実行することができました。 python manage.py runserver . ウェブサーバからローカルに 127.0.0.1:port にアクセスすると、成功したことを示す Django のページが表示されます。

Django ウェブサーバが本番用サーバではないことは理解していますが、テスト目的で外部からアクセスできることは重要です -- すなわち、サーバ上のウェブブラウザからではなく、別のコンピュータからです。

試してみました。

http://mywebserver:port_django_runs_on

が、うまくいきませんでした。 また、代わりにIPを使って(ifconfigに基づいて)アクセスすることも試みました。

http://myipaddress:port_django_runs_on 

もうまくいきませんでした。

Webサーバーは起動しているので、外部からアクセスできるはずです。 私は Apache で Linux を動かしていますが、Django を Apache で構成したことはありません。

何かいい方法はないでしょうか?

どのように解決するのですか?

開発用サーバーを、以下のように動作させる必要があります。 インターフェイスをリッスンする をネットワークに接続してください。

python manage.py runserver 0.0.0.0:8000

を聴く すべての インターフェイスのポート8000に接続します。

ウェブサーバーにIPでアクセスしても、ホスト名でアクセスしても同じです。やはり自分のLANの中なのでしょう。

もし、本当に外部からアクセスしたいのであれば、ルーターでポートを転送するように設定する必要があります。 8000 をサーバに送信します。


サーバーのファイアウォールで、使用中のポートへの着信が許可されているかどうか確認してください。

外部からApacheサーバーに正常にアクセスできることを前提に、こんなことも試してみてください。

  • Apacheサーバーを停止し、ポート 80 が空いている。
  • 開発用サーバーの起動は sudo python manage.py runserver 0.0.0.0:80