CentOS7のNginxを最新バージョンに

最近、サイトの構成を変更するためにNginxのドキュメントとかを見ていると、各所でNginxのバージョンについての記載がありました。

気になって自分のサーバーにインストールされているNginxのバージョンを見てみると、意外と古いバージョンのNginxが入ってました。”yum install nginx”を実行すると、epelリポジトリから持ってきてくれるわけですが、それが意外と古かったようです。

Nginxをepelリポジトリではなく、nginx公式リポジトリから持ってくるようにしたのでその手順を書いておきます。こうすれば、”yum update”でいつでもnginxを最新に保てます。

アップデート手順

古いバージョンのNginxを削除→新しいバージョンのNginxをインストール

nginx公式に書いてあるインストール手順通りにやれば、何も難しくないです。しかし、Nginxを一旦削除するので、設定ファイルやウェブページのデータなどはしっかりバックアップします。

http://nginx.org/en/linux_packages.html

nginxのリポジトリを追加

stableとmainlineの2つがありますが、今回はmainlineのリポジトリを登録します。もしstableをインストールしたい場合は、以下の”mainline/”を削除すればOKです。

$ sudo vim /etc/yum.repo.d/nginx.repo

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=0
enabled=1

古いバージョンのNginxを削除

今回は、古いnginxやその周りのものは一気に消してしまう方針で行きます。

$ sudo yum remove nginx

//自分の環境で消えたもの
nginx-mod-http-image-filter-1.12.2-2.el7.x86_64
nginx-mod-http-perl-1.12.2-2.el7.x86_64
nginx-mod-http-xslt-filter-1.12.2-2.el7.x86_64
nginx-mod-mail-1.12.2-2.el7.x86_64
nginx-mod-stream-1.12.2-2.el7.x86_64
nginx-all-modules-1.12.2-2.el7.noarch
nginx-mod-http-geoip-1.12.2-2.el7.x86_64
nginx-1.12.2-2.el7.x86_64

新しいNginxをインストール

nginxをインストールしてバージョンの確認をしておきます。

$ sudo yum install nginx

//インストールされたもの
nginx-1.15.5-1.el7_4.ngx.x86_64


$ ngninx -v
nginx version: nginx/1.15.5

追加のモジュールを使用する場合は、別途インストールします。古いバージョンにあったmailやstreamにあたるものは、nginx -Vでそれっぽいのが確認できるので、もともと入っているのかも(要確認)。

$ yum search nginx-module

nginx-module-geoip-debuginfo.x86_64 : Debug information for package nginx-module-geoip
nginx-module-image-filter-debuginfo.x86_64 : Debug information for package nginx-module-image-filter
nginx-module-njs-debuginfo.x86_64 : Debug information for package nginx-module-njs
nginx-module-perl-debuginfo.x86_64 : Debug information for package nginx-module-perl
nginx-module-xslt-debuginfo.x86_64 : Debug information for package nginx-module-xslt
nginx-module-geoip.x86_64 : nginx GeoIP dynamic modules
nginx-module-image-filter.x86_64 : nginx image filter dynamic module
nginx-module-njs.x86_64 : nginx njs dynamic modules
nginx-module-perl.x86_64 : nginx Perl dynamic module
nginx-module-xslt.x86_64 : nginx xslt dynamic module

これで一通りの作業は終わりです。/etc/nginx以下の設定ファイルに、”nginx.conf.rpmnew”みたいな感じで新しい設定ファイルができてました。ほんとにまっさらな設定ファイルでした。

書式も変わらないし、自分はそもそも全部書き直している最中なのであまり関係なさそうです。

今回始めてアイキャッチ画像を設定してみたけど意外と面白いです。気が向いたら他の記事にもつけてみます。

かず猫

インターネット初心者です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

コメントする

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください