初めてのNginx
はじめに
僕は現在「フィヨルドブートキャンプ」というプログラミングスクールでプログラミングを勉強中です。
今回はそのプラクティスの中でNginxに初めて触れたので、復習もかねてまとめておきます。
Nginxとは?
Webサーバ兼リバースプロキシのソフトウェア。静的なコンテンツを提供する。
実行環境
- さくらVPS上のサーバー
- OS...Debian10.4
やりたいこと
- Nginxのインストール。
- Nginxを使ってHTMLをweb上に配信。
手順
Nginxのインストール
(1)Nginxをインストール
$ sudo apt-get install nginx
(2)最新版をインストールできるようにするため、 Nginxのサイトをリポジトリに登録する。
まずパッケージの公開鍵をダウンロードしてapt-key
で追加する。
$ wget "http://nginx.org/keys/nginx_signing.key" $ sudo apt-key add nginx_signing.key
この時、「gnupgがないよ」みたいなエラーが出たらgnupg
をインストール。
$ sudo apt install gnupg
(3)設定ファイルを開く。
$ sudo vi /etc/apt/sources.list
下記を設定ファイル内に追加。
deb http://nginx.org/packages/debian/ buster nginx deb-src http://nginx.org/packages/debian/ buster nginx
buster
の部分はDebianのバージョンにより異なるので注意。Debian10系ならコードネームはbuster。9系ならstretch。8系ならjessie。
バージョン確認は以下のコマンドを実行。
$ cat /etc/debian_version
(4)登録を反映して最新版をインストールする。
$ sudo apt-get update $ sudo apt-get install nginx
(5)Nginxのスタート
$ sudo /etc/init.d/nginx start
ブラウザのアドレスバーにサーバーのIPアドレスを入力してアクセスしてみる。以下のような画面が表示されればOK
HTMLを配信する
HTMLファイルの置き場所を探す。
nginxの設定ファイルである/etc/nginx/nginx.conf
を見てみると、include /etc/nginx/sites-enabled/*;
となっており、lsコマンドで確認してみる。
$ ls /etc/nginx/sites-enabled default
と出てきたため、/etc/nginx/sites-enabled/default
を開いてみるとroot /var/www/html;
の記載が見つかった。
つまり、ブラウザに自身のHTMLを表示させるには、/var/www/html
にHTMLファイルを置けば良さそう。
適当なファイルを作成し、/var/www/html
に置く。
$ vim /var/www/html/index.sample.html
再度、ブラウザからサーバーのIPアドレスへアクセスしてみる...
自作のHTMLファイルが表示された!! これでweb上に静的コンテンツを配信できるようになった。