のための管理者権限が必要です。
まず、Djangoには、非常に基本的な開発サーバーのがありません。デフォルトではポート8080が使用されています。
コマンドに
python manage.py runserver
を実行するときに、その開発サーバーを起動するジャンゴ伝え、本番サーバーにデプロイする前に、あなたのWebアプリケーションをテストすることができますので、それが実行されます。
Django Documentation -> django-admin -> Run Server
サーバーにアクセスする方法は
localhost:8080
は、デフォルトでは、ほとんどのHTTPアプリケーションはそうしない限り、ポート80上で実行するようにアドレスバーにURLにブラウザを使用してプラグインすることです述べました。たとえば、MySQLサーバはデフォルトでポート3306で動作します。
基本的に、ポートはあなたとあなたと連絡を取るためにあなたを接続する古い電話回線と考えることができます。
これは本当に特別なことは何もありません。あなたは基本的に基礎を得るためにボトルで遊ぶべきでしょう。ちょうど友好的な提案。
ウェブサイトの詳細を参照できます。 はセキュアではありませんが、sudo
を使用してポート80で実行できますが、セキュリティ上の理由から避けるべきです。 mtt2p @
はなぜ
の偉大な仕事をしてserverfaultポストに言及している私は、ローカル接続のみを許可するようにサーバーを指示する方法があります確信している、しかし、あなただけの0.0.0.0:80ときに使用する必要があります自分の仕事を他の人に見せたり、他のデバイスであなたのウェブアプリがどのように見えるかを見たいと思っています。
長期的に見ると、sudo
は、はるかに簡単で迅速ですが、怠惰で安全性に欠けます。
これは、virtualenvのコンテキストでそれを説明するリンクです。
Django runserver error when specifying port
答え状態
I guess the sudo command will run the process in the superuser context, and the superuser context lack virtualenv settings.
Make a shell script to set the virtualenv and call manage.py runserver, then sudo this script instead.
あなたはvirtualenvのベースのコンテキストを説明する答えも安全ではないことに注意してください。それはちょうどvirtualenvの外
sudo python manage.py runserver 80
ない
sudo bash script-name
として実行する必要があります。そうすることで、アプリケーションのサンドボックス化の目的が破られます。これを無視すると、race conditionにあなた自身が公開されます。
にsudoのpython manage.pyのrunserver 0.0.0.0:80 – mtt2p
私はあなたの質問を理解していません。あなたはuwsgiで 'runserver'を使用しません。 –
そして@ mtt2pはお勧めしません。あなたは基本的にOPが生産のためにrunserverを使うことを奨励しています。 –