CentOS 7にNginx stable最新版をインストール（公式repository）

# はじめに

公式repositoryを利用してCentOS7にNginx stable最新版をインストール
親記事：[Nginxの各種インストール方法とEOLまとめ](https://qiita.com/witchcraze/items/df4a0baaaad9c932ea30)
参考：[nginx: Linux packages](https://nginx.org/en/linux_packages.html#RHEL-CentOS)

## サポート

本手法で導入した場合、nginxの開発が停止するまでサポートされると思われる。
特定のバージョンを指定しなければ、stable最新版が常に提供されると思われる。

## LOG

### レポジトリ登録

```shell-session
# vi /etc/yum.repos.d/nginx.repo
```

```shell-session:/etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
```

### インストール

```shell-session
# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

# yum install -y nginx which
... 略
```

### nginx起動/停止

```shell-session
# systemctl start nginx
# systemctl status -l nginx
● nginx.service - nginx - high performance web server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
   Active: active (running) since Mon 2019-10-14 14:50:02 UTC; 4s ago
     Docs: http://nginx.org/en/docs/
  Process: 203 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=0/SUCCESS)
 Main PID: 204 (nginx)
   CGroup: /docker/06d90e6c37f516e7cf512b23098bd7c5403966bc2c70bbf8f75391af2175faf2/system.slice/nginx.service
           tq204 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
           mq205 nginx: worker process
           ? 204 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf

Oct 14 14:50:02 06d90e6c37f5 systemd[1]: Starting nginx - high performance web server...
Oct 14 14:50:02 06d90e6c37f5 systemd[1]: PID file /var/run/nginx.pid not readable (yet?) after start.
Oct 14 14:50:02 06d90e6c37f5 systemd[1]: Started nginx - high performance web server.
```

```shell-session
# systemctl stop nginx
# systemctl status -l nginx
● nginx.service - nginx - high performance web server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
     Docs: http://nginx.org/en/docs/

Oct 14 14:50:02 06d90e6c37f5 systemd[1]: Starting nginx - high performance web server...
Oct 14 14:50:02 06d90e6c37f5 systemd[1]: PID file /var/run/nginx.pid not readable (yet?) after start.
Oct 14 14:50:02 06d90e6c37f5 systemd[1]: Started nginx - high performance web server.
Oct 14 14:50:19 06d90e6c37f5 systemd[1]: Stopping nginx - high performance web server...
Oct 14 14:50:19 06d90e6c37f5 systemd[1]: Stopped nginx - high performance web server.
```

### nginx自動起動設定/設定解除

```shell-session
# systemctl enable nginx
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.

# systemctl list-unit-files --type=service |grep nginx
nginx-debug.service                    disabled
nginx.service                          enabled
```

```shell-session
# systemctl disable nginx
Removed symlink /etc/systemd/system/multi-user.target.wants/nginx.service.

# systemctl list-unit-files --type=service |grep nginx
nginx-debug.service                    disabled
nginx.service                          disabled
```

### 各種確認

```shell-session
# which nginx
/usr/sbin/nginx

# nginx -v
nginx version: nginx/1.16.1

# yum info nginx
Loaded plugins: fastestmirror, ovl
Loading mirror speeds from cached hostfile
 * base: ftp-srv2.kddilabs.jp
 * extras: ftp-srv2.kddilabs.jp
 * updates: ftp-srv2.kddilabs.jp
Installed Packages
Name        : nginx
Arch        : x86_64
Epoch       : 1
Version     : 1.16.1
Release     : 1.el7.ngx
Size        : 2.7 M
Repo        : installed
From repo   : nginx-stable
Summary     : High performance web server
URL         : http://nginx.org/
License     : 2-clause BSD-like license
Description : nginx [engine x] is an HTTP and reverse proxy server, as well as
            : a mail proxy server.
```