サーバーを使ったやり取りをしてみたい その4 「ngrokでwebからサーバーをみれるように」

こんにちは~ cacaponです~


少しずつ温かくなってきてるな~という今日ころ頃ですが、
cacapon'sルームはとっても寒いです~ 
なぜでしょう…

さて、本日のテーマですが、
pyshonのサーバーやり取りの続きを書こうと思います♪

前々回で簡単な要求・応答のやり取りはできたのですが、
「ローカルホスト」でしか動いていませんでした。
つまり、外部から見れないのです~
前々回の記事

https://cacapon.hatenablog.com/entry/2019/02/19/134247



今回は、お手軽に「web」から閲覧できる
状態にするため、ngrokというツールを使いました!
今回はこちらの紹介をしたいと思います。♪

=ngrokってなに?=

cacaponの認識としては
「ローカルホストを一時的にwebへ公開するためのツール」
になります~

webサーバーは色々種類があると思いますが、
値段がかかったり、準備までが大変だったりと
cacaponとしてはうれしくない要素たんまりです…

その点、ngrokは無料でできますし、設定も簡単なので、
「webでの動作を確認したい」人や
「webサーバーの勉強したい」人には
おすすめかな~と思います!
ただ、長期的な運用目的の際は、
ほかのサーバーサービスを利用するのが良いかと思います~

cacaponの作ったサーバーは確認ができれば良し!
ですので、今回はこちらのngrokを使わせていただきます♪

=インストールしてみる=

 ①まずはこちらにアクセス♪

ngrok.com②右上にある f:id:cacapon:20190326131951p:plainを押して登録しましょう~

 cacaponはgoogleアカウントで登録しました~

③ログインしてホーム画面につくと、
 ツールのセットアップ手順があります~

f:id:cacapon:20190326131905p:plain

ngrokのホーム画面。英語ですが手順が載っています~

ん~英語なのでよくわからないところもあります~
※cacaponは英語が苦手…

とりあえず、ダウンロードと解凍は分かりましたので、
cacapon'sPC(windows10)にダウンロード、
手に入れたzipを解凍しました~

中に入っていた、ngrok.exeを実行すると…

f:id:cacapon:20190326133453p:plain

よくある、文字で動かす黒い画面

この画面が出てきます~
お、COMMANDSに authtokenってありますね~
これは手順③に書いてあったものです~
なので ngrok authtoken <赤四角で隠した部分>を入力してenter♪
これで準備が整いました~

=使ってみる=
さっきの黒い画面で次のコマンドを打ちます。
ngrok http <ポート番号>

…ポート番号って何番でしたっけ?
cacaponが作ったpythonファイルをみると…

f:id:cacapon:20190301151852p:plain

12行目で5000番に設定してますね~
ですので…
ngrok http 5000
と打ちましょう~ そうすると…

f:id:cacapon:20190326134856p:plain

実行画面です~

お~ なんかでてきました~
これがngrok実行中の状態になります~

ここで、出てくるForwardingというところに書いてある
URLにアクセスすると、ローカルホストの内容を見ることができるのです~
(作ったpythonのやつだとまっさらですが~)

実行中なら、どんな機器でも、URL打ち込めば
アクセスすることができます~ すごいですね~

終わるときはCtrlキーとcボタン同時押しですよ~

 
なお、こちらのURLは終了した際に破棄されます~
また、もう一回実行すると別のURLに代わっています~
こんな感じで毎回変わりますので、
お試しされる際は、ご自身でご確認くださいませ~

=まとめ=
・ngrok.exe立ち上げて
・コマンド打って
・そこのURLにアクセスするだけ~

これだけでwebからサーバーが見れるって
便利ですね~ ngrokすごいです~

ドキュメントみたらもっとすごい機能があるみたいですが、
今回はwebから見れるようにしたいというだけでしたので、
割愛します~ 興味ある方は見てみてください~

ngrok – documentation

とうとう、ローカルで動かしていたサーバーが
外から見れるようになりました~

といっても、今はまっさらなので、今度は
pythonのファイルをいじってもう少し面白い
アクションができるようにしたいな~と考えてます~

おたのしみに~

=今までのpython サーバーを使ったやり取りをしてみたいの記事=

サーバーを使ったやり取りをしてみたい その1 「どこが分からないかな?」

サーバーを使ったやり取りをしてみたい その2 「サーバー作ってみる」

サーバーを使ったやり取りをしてみたい その3 「要求・応答について調べてみる」