Webサーバー サイトの管理
Webサーバー
Nginx のみを バージョンアップする
Webサーバー
Nginx のみを バージョンアップする
Raspberry Pi を「full-upgrade」すると、PHPのバージョンが【7.4 から 8.0】にバージョンアップされた。そこで、これに合わせて Nginx もバージョンアップすることにした。
以下、Nginx のバージョンを【1.18.0 から 1.20.1】にアップデートした記録。
スポンサー リンク
目 次
1. 「full-upgrade」で Nginx がバージョンがアップされない理由
エラーメッセージ。
N: リポジトリ 'http://nginx.org/packages/debian buster InRelease' がアーキテクチャ 'armhf' をサポートしないため設定ファイル 'nginx/binary-armhf/Packages' の取得をスキップ
原因。
Nginx の最新版をインストールするために、
sudo nano /etc/apt/sources.list
で、「sources.list」に nginx公式のリポジトリを登録している。
sudo nano /etc/apt/sources.list
で、「sources.list」に nginx公式のリポジトリを登録している。
このように、Raspbian の「デフォルトパッケージリポジトリ」を使用せずに、nginxのリポジトリを登録して Nginx をインストールしていると、nginxの公式リポジトリが、Raspberry Pi のプラットフォーム『armhf』をサポートしていない為、更新情報が取得されずスキップされる。
この「エラーメッセージ」を止めるには、「sources.list」に登録されているnginxのリポジトリを削除すればよい。
2. Nginx の最新バージョン
Stable version は【1.20.1】が最新。
3. Nginx のバージョンアップ手順
nginx ソースの公式リポジトリを追加した後、パッケージ・リストの更新を行ってから、debian用の stableの最新版nginx をインストールする。
1. 既存のNginxをアンインストールする。
sudo apt-get remove nginx nginx-common
2. nginx公式リポジトリの鍵を登録。
wget http://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key
sudo apt-key add nginx_signing.key
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
deb http://nginx.org/packages/debian/ buster nginx
deb-src http://nginx.org/packages/debian/ buster nginx
4. ソースの入手。
sudo apt-get update
sudo apt-get build-dep nginx
ソースの入手
sudo apt-get source nginx
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」に表示される。
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に戻して運用せざるを得なかった。
WordPress本体(5.8.2)やプラグインが完全に対応できていない。
現状では、PHP7.4に戻して運用せざるを得なかった。
以上。
(2021.07.01)
(2021.07.01)
スポンサー リンク