[メモ]Let’s EncryptのSSL証明書インストール成功後、apacheが「Syntax error ~ does not exist or is empty」となる時の対処方法

certbotでLet’s EncryptのSSL証明書の生成とインストールが成功した後に下記コマンドを実行すると、「Syntax error ~ does not exist or is empty」というエラーが発生する時の対処方法を記述します。

コマンドライン
$ apache2ctl configtest
実行環境

PC:Raspberry Pi 4 Model B 8GB
OS:Raspberry Pi OS(Bullseye)
Webサーバ:Apache2.4

原因の1つ

Let’s Encrypt関係のパーミッションが絞られている可能性があります。

下記のコマンドを実行して確認してみてください。

コマンドライン
$ ls -al /etc/letsencrypt/

「archive」と「live」フォルダのパーミッションが「drwx——」などになっていたら、apache2に権限が無くてアクセスできていない可能性があります。

解決方法

そのような場合は下記のコマンドを実行して実行権限を与えてください。

コマンドライン
$ sudo chmod 755 /etc/letsencrypt/archive/
$ sudo chmod 755 /etc/letsencrypt/live/

これで2つのフォルダのパーミッションが「drex-r-xr-x」になり、apache2がアクセス可能になります。

以上の手順を行った後に再度コマンド「apache2ctl configtest」を実行してください。

「Syntax OK」と表示が出れば解決です。

参照

下記の情報元を参考にしました。この場を借りて、感謝申し上げます。

Let’s Encrypt + Apache でちゃんと証明書の生成が完了してるのに ‘*.pem’ does not exist or is empty というエラーが出る時のメモ

タイトルとURLをコピーしました