ネットスケープじじいのパソコン日記(Nginxバージョンアップ編)
Web Server のアプリケーションの「Nginx」のバージョンアップをしました。もうひとつの「Apache」は一度挫折してから手を出していません。普通に「sudo apt install nginx」だと「ver 1.18.0」がインストールされます。最新は「ver 1.24.0-1」です。五か月前だったか「Nginx」はとんでもないバグが見つかっていますのでお家Web Serverも最新にしました。ところが、大きくはまってしまいました。
まずは、リポジトリの登録です。
バージョン確認は「sudo apt info nginx」でVersion: 1.18.0-6ubuntu14.4でした。
「sudo apt install curl gnupg2 ca-certificates lsb-release ubuntu-keyring」リポジトリ登録に必要なプログラムをインストール。
「curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null」
ここでひとはまりしました。「nginx_signing.key ¥ | gpg --dearmor ¥ | sudo」、本家のウェブページでも¥マークが二つあり、このまま実行すると「/usr/share/keyrings/nginx-archive-keyring.gpg」のファイルはできますが中身は「0」バイトの空っぽでして。
「curl https://nginx.org/keys/nginx_signing.key」でテキスト形式のkeyファイルをダウンロードします。Linuxのキーバインドでは「¥」のところは縦棒「|」のパイプ処理をするときに使われます。「¥」が邪魔してエラーになります。 「gpg --dearmor ¥」ダウンロードしたテキストファイルをバイナリに変換します。ここでも「¥」が邪魔してエラーになりました。あとは指定したパスにバイナリファイルを作ります。
エラーがなければ「gpg --dry-run --quiet --import --import-options import-show /usr/share/keyrings/nginx-archive-keyring.gpg」コマンドでキーの内容を確認できます。
「echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" | sudo tee /etc/apt/sources.list.d/nginx.list」
実際は、「keyring.gpg] ¥」¥マークが入っていてエラーになりました。
このコマンドは「apt」のソースリストに「Nginx」のリポジトリ登録します。
「$ sudo apt update」
「$ sudo apt install nginx」
「$ sudo apt info nginx」
Version: 1.24.0-1になりました。
しかし、次のはまりがきました。
「/etc/nginx/sites-available/default」の中の「root」を変えてもwebページが変わりませんでした。ここのパスは「ver 1.18.0」用でした。
結局、古い「Nginx」のアンインストールが必要でした。
「sudo apt autoremove --purge nginx」ですべての「Nginx」のファイルを削除して再インストールしました。
「ver 1.24.0-1」の設定ファイルは 「/etc/nginx/conf.d/default.conf」になっていました。これでちゃんとWebページにつながりました。
この記事が気に入ったらサポートをしてみませんか?