Raspberry Pi Webサーバー Nginx の Update

Webサーバー サイトの管理
Webサーバー
Nginx のみを バージョンアップする
 
Raspberry Pi を「full-upgrade」すると、PHPのバージョンが【7.4 から 8.0】にバージョンアップされた。そこで、これに合わせて Nginx もバージョンアップすることにした。
 
現在稼働中の Nginx のバージョンは【1.18.0】なので「Nginx のみ」を、最新バージョンにアップデートする
 
以下、Nginx のバージョンを【1.18.0 から 1.20.1】にアップデートした記録。
 
 

 

スポンサー リンク

 

 
 
 
 
 
1. 「full-upgrade」で Nginx がバージョンがアップされない理由
 
sudo apt update の実行結果。
sudo apt update の実行結果
 
エラーメッセージ。
N: リポジトリ 'http://nginx.org/packages/debian buster InRelease' がアーキテクチャ 'armhf' をサポートしないため設定ファイル 'nginx/binary-armhf/Packages' の取得をスキップ
 
 
原因。
Nginx の最新版をインストールするために、
 sudo nano /etc/apt/sources.list 
で、「sources.list」に nginx公式のリポジトリを登録している。
 
「sources.list」の内容。
sources.list への登録結果
 
このように、Raspbian の「デフォルトパッケージリポジトリ」を使用せずに、nginxのリポジトリを登録して Nginx をインストールしていると、nginxの公式リポジトリが、Raspberry Pi のプラットフォーム『armhf』をサポートしていない為、更新情報が取得されずスキップされる。
 
この「エラーメッセージ」を止めるには、「sources.list」に登録されているnginxのリポジトリを削除すればよい。
 
 
 
2. Nginx の最新バージョン
 
現在稼働中の Nginx と PHP のバージョン。
現在稼働中の Nginx と PHP のバージョン
 
Nginx の公式サイトで、最新版(Stable version)を確認する。
Nginx の公式サイトで、最新版(Stable version)を確認する
 
Stable version は【1.20.1】が最新。
 
「Nginx のみ」を、最新バージョンにアップデートする。
現在稼働中の Nginx のバージョンは【1.18.0】なので「Nginx のみ」を、最新バージョンにアップデートする
 
 
 
3. Nginx のバージョンアップ手順
 
nginx ソースの公式リポジトリを追加した後、パッケージ・リストの更新を行ってから、debian用の stableの最新版nginx をインストールする。
 
1. 既存のNginxをアンインストールする。
sudo apt-get remove nginx nginx-common
 
Nginxのアンインストール。
Nginxのアンインストール
 
2. nginx公式リポジトリの鍵を登録。
wget http://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key
 
nginx公式リポジトリの鍵を登録した結果。
nginx公式リポジトリの鍵を登録した結果
 
3. nginx公式のリポジトリを登録。
sudo nano /etc/apt/sources.list
 
下記を追記。(注意:赤字は Raspbian のバージョン)
deb http://nginx.org/packages/debian/ buster nginx
deb-src http://nginx.org/packages/debian/ buster nginx
 
sources.list への登録結果。
sources.list への登録結果
 
4. ソースの入手。
sudo apt-get update
sudo apt-get build-dep nginx

ソースの入手
sudo apt-get source nginx
 
ソースの入手結果。
ソースの入手結果
 
5. ソースからパッケージをビルド。赤字の箇所は、バージョンに応じて変更する。
ソースコードからバイナリパッケージを生成
cd nginx-1.20.1
sudo dpkg-buildpackage -uc -b
cd

パッケージのインストール
sudo dpkg -i nginx_1.20.1-1~buster_armhf.deb
このパスは、バイナリパッケージを生成した結果の「dpkg-deb」に表示される。
 
ソースコードから、バイナリパッケージを生成した結果。
ソースコードから、バイナリパッケージを生成した結果
 
パッケージのインストール結果。
パッケージのインストール結果
 
 
途中で、「/etc/nginx/conf.d/default.conf」の取り扱いについて選択が出来る。
 
次に、「/etc/nginx/nginx.conf」の取り扱いについも選択が出来る。
 
双方ともに、「y」を入力し新しい設定にしたが、「n」を入力し現行の設定をそのまま残すべきだった。
 
 
nginx のバージョン確認。
nginx -v
 
バージョンアップ結果。
バージョンアップ結果
 
 
 
4. Nginx の設定の確認
 
/etc/nginx/nginx.conf の確認。
sudo nano /etc/nginx/nginx.conf
 
/etc/nginx/conf.d/default.conf の確認。
sudo nano /etc/nginx/conf.d/default.conf
 
 
以上、Nginx のみをバージョンアップしても、問題なく稼働。
 
 
 
5. WordPressに於ける PHP8.0 の問題
 
PHP 8.0には多くの新機能や最適化が反映されており、
WordPress本体(5.8.2)やプラグインが完全に対応できていない。
現状では、PHP7.4に戻して運用せざるを得なかった。
 
 
以上。
(2021.07.01)
 

 

スポンサー リンク

 

             

 

 

 

コメントを残す

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.