質問: さくらのvps(centos7.0)でdjangoを使用しています。 `python manage.py runserver`で `http://127.0.0.1:8000/`にアクセスしようとすると、ブラウザに下記のerrorがでてしまいます。 ``` このサイトにアクセスできません 127.0.0.1 で接続が拒否されました。 ``` どなたか対処法をご教示いただけませんでしょうか。よろしくお願いいたします。 なお、 `python manage.py runserver`では、下のメッセージが出力されるので、djangoの起動は成功していると理解しています。 ``` Django version 1.9.4, using settings 'mysite.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CONTROL-C. ```
回答: TCP/IP、特にIPアドレスについての学習が必要そうです。 127.0.0.1 というIPアドレスは ローカルループバックアドレス といい、常に「自分自身」を示すIPアドレスとなります。 つまり、VPSサーバ内にとっての「127.0.0.1」はVPSサーバ自身ですし、自分のPCにとっての 127.0.0.1 はPC自身です。 ホスト名で表示した際の「localhost」というのも同じくローカルループバックです(文字通りですよね)。 自分のPCからChromeで127.0.0.1にアクセスしたということは自分のPCにアクセスしたことを意味しますので、VPSで起動しているサービスにアクセスしたことにはなりません。 自分のPCからVPS上のそのサービスにアクセスできるようにするためには、 * そのサービスをグローバルIPアドレスで起動する * リバースプロキシなどを利用して、別のグローバルIPアドレスと127.0.0.1をつなげる * SSHポートフォワードなどを利用する など、さまざま目的に応じて選択肢があります。 必要とするセキュリティレベルなどを加味しながら手段を選ぶ必要があります。