CentOSにnginxをインストールしてみました。その手順です。Apacheが裏で動いている状況でインストールしたので、その考慮を後半に書いています。
まずnginxのダウンロードサイトを見てみます。
2021年1月1日時点で、Mainline versionだと「1.19.6」、Stable versionだと「1.18.0」が最新のようです。Mainline版とStable版の違いですが、nginxの新機能やバグ修正はMainline版に取り込まれ、その後、Stable版に反映されるようです。Stable版のほうが安定していると思いますが、Mainline版でもテストは十分されているようで推奨されているのはMainline版のほうです。ですので、Mainline版のほうをインストールしようと思います。
インストールはyumコマンドで行います。CentOSのデフォルトではnginxのリポジトリがないので新規にrepoファイルを作成します。repoファイルの配置場所は /etc/yum.repos.d 配下です。ここに nginx.repo というファイルを新規作成します。作業はrootユーザーで行います。
# cd /etc/yum.repos.d
# vi nginx.repo
nginx.repoに記載する内容です。
[nginx] name=nginx repo baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/ gpgcheck=0 enabled=1
baseurlの中でCentOSのバージョンを指定していますので(太字の所)、ここはCentOSのバージョンに合わせて変更してください。今回はCentOS 7.9 ですので「7」としています。baseurlのパスはmainline版のほうにしています。
リポジトリファイルが出来たらyumが機能するか試してみます。
# yum info nginx
以下が実行した結果です。バージョン「1.19.6」となっています(赤枠の所)。
それでは、nginxをインストールします。
# yum install nginx
:
(インストールログは省略)
:
インストールが完了したら確認してみます。
# nginx -v
nginx version: nginx/1.19.6
-vオプションで、上記のようにバージョンが表示されます。
インストールしただけの状態ではnginxは起動していません。これからnginxを起動させるのですが、冒頭で書いたように裏でApacheが動いているので以下の対応を行います。
- nginxの受付ポートを80から8000に変更する。
- firewalldでポート8000の穴開けをする。
ポート80をApacheが使っているのでnginxの受付ポートを8000としています。
では、nginxの受付ポートを変更してみます。/etc/nginx/conf.d 配下にdefault.confというファイルがあるので、ここのlistenディレクティブを変更します。
# cd /etc/nginx/conf.d
# vi default.conf
修正する内容です(listenディレクティブは2行目にあります)。
修正前
listen 80;
↓
修正後
listen 8000;
次に、firewalldでポートの穴開けをします。
# firewall-cmd --add-port=8000/tcp
success
success と表示されればOKです。ポートが開いたかを確認します。
# firewall-cmd --list-ports
8000/tcp
8000/tcp が表示されていれば開いています。
これで準備が整いましたのでnginxを起動させます。
# systemctl start nginx
ウェブブラウザから「http://nginxのIPアドレス:8000/」としてnginxにアクセスします。ポート指定するのを忘れずに。以下の画面が表示されればnginxは稼働しています。
最後に、nginxの停止とfirewalldでのポートの閉め方を書いておきます。
nginxを停止させます。
# systemctl stop nginx
ポート8000も閉めておきます。
# firewall-cmd --remove-port=8000/tcp
success
firewall-cmd --list-ports をすると「8000/tcp」の表示はなくなっています。