筆者の環境
- Ubuntu16.04(KAGOYA VPS KVM)
Nginxって何
- Apacheの代替となり得るWebサーバ
Apacheとの違い
- C10Kをクリアしていて静的コンテンツを返すレスポンスが早い
- C10Kとは・・・クライアント一万人接続問題の事
- イベント駆動
- 一応Apacheでもイベント駆動には出来るがNginxの方が早い
「え?今時 ApacheはC10Kクリアしてないの?」と思いましたが、Apacheの武器はそこではない様です
下記ページでわかりやすく書かれていました。
Nginxとは?Apacheとの違いについてエンジニアに聞いてみた
https://academy.gmocloud.com/qa/20160616/2761
phpやCGIを使用した動的な処理をしたい場合はApache
速度や可能アクセス数を求められる場合にはNginx
といった使い方になりそうです。
どっちも使って、お互いのデメリットを埋める事も出来るそうです。
初期ページを表示するまでの手順
1. ポート解放とNginxのインストール、起動
$ apt update
ufw(ファイアウォール)をインストール
$ apt install ufw
インストール直後はufwはファイアウォールとして指定されないためufwを有効化
$ ufw enable
「このコマンドを実行するとssh接続が切れるかも知れませんがいいですか?」と聞かれるので y を入力してEnter
sshのポートを開く
これを行わないとssh切断したあと接続出来なくなってしまいます!
$ ufw allow 22
Nginxが使用するポートを開く
$ ufw allow 80
Nginxをインストールする
$ apt install nginx
Nginxが稼働している事を確認する
$ curl localhost
curlでウェブページにアクセスすると、そのページのhtmlの内容が帰って来ます
自分のIPアドレスを確認する
$ ifconfig | grep "inet addr:"
192.168.1.xや127.0.0.1といったIPアドレスが表示されると思います
これらはローカルIPや、グローバルIPと呼ばれます。
127.0.0.1は、ループバックアドレスと呼ばれ、自分自身を表すIPアドレスとなります。
2. 実際にページを表示してみる
同じネットワーク内の他のPCからウェブサーバを利用してみます。
ブラウザを起動し、先ほど確認したローカルIP、又はグローバルIPをアドレスバーに入力します。
Nginxではこれが初期ページとして設定されています。
ページを追加、変更する
1. ドキュメントルートを確認する
$ grep "root" -r /etc/nginx/ | grep "html"
/etc/nginx/sites-available/default: root /var/www/html;
私の場合はこう表示されました。
Nginxのバージョンなどによってパスが違う様なので、このように調べるのが確実です。
どうやらページとなるhtmlファイルが保存されているのは /var/www/html ディレクトリの様です。
ここを ドキュメントルート と呼びます。
2. ページを追加する
ドキュメントルートに移動する
$ cd /var/www/html/
新しいページのファイルを作成する、アクセスする際のページ名は「test.html」とします
$ echo "Hello World!" > ./test.html
3. 実際にページを表示してみる
他のPCからページを
同じネットワーク内の他のPCからウェブサーバを利用してみます。
ブラウザを起動し、下記のようにアドレスバーに入力します。
Apacheが気になる方はこちら
今回の記事ではこちらにお世話になりました。
仮想マシン(Ubuntu)にWebサーバーNginxをインストールしブラウザからWEBページを表示確認する方法
https://hajipro.com/vagrant/vagrant-ubuntu-nginx