Рейтинг:0

Ошибка в нескольких доменах с nginx при добавлении сертификата certboot

флаг in

Я использую сервер Ubuntu 20.04 в Azure с Nginx, PHP-FPM и двумя веб-сайтами.
Это сайты example.com и sub.example.com, и они имеют сертификат, выданный certbot, и работают нормально.
Я добавил третий сайт с другим доменом example2.com, и он работал нормально. Но когда я добавляю certbot на этот третий сайт, они все перестают работать, а Nginx не останавливается и не показывает никаких ошибок. Я добавил сертификаты, используя это

sudo certbot --Nginx -d example.com -d www.example.com    
sudo certbot --nginx -d sub.example.com

До сих пор все в порядке, и сайты работают нормально последние пять месяцев.

Затем я добавляю новый веб-сайт, и два работают нормально, но когда я добавляю certbot, все они перестают работать, но nginx все еще работает без ошибок.

sudo certbot --nginx -d example2.com -d www.example2.com

проверка Nginx:

судо nginx-t
nginx: синтаксис файла конфигурации /etc/nginx/nginx.conf в порядке
nginx: проверка файла конфигурации /etc/nginx/nginx.conf прошла успешно

Сайты снова работают только если я удалю сертификат с третьего сайта

sudo sudo certbot удалить --cert-name example2.com

Извините, я изо всех сил стараюсь использовать английский язык.

Серверный блок Сайт 1

сервер {
        корень /var/www/example.com/html;
        индекс index.php index.html index.htm index.nginx-debian.html;
        имя_сервера example.com www.example.com;
        место расположения / {
                try_files $uri $uri/ /index.php?$args;
        }
        расположение ~ \.php$ {
                try_files $uri = 404;
                fastcgi_pass unix:/run/php/php7.4-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                включить fastcgi_params;
  }

    слушать [::]:443 ssl ipv6only=on; # под управлением Certbot
    слушать 443 ssl; # под управлением Certbot
    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # под управлением Certbot
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # под управлением Certbot
    включить /etc/letsencrypt/options-ssl-nginx.conf; # под управлением Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # под управлением Certbot


}
сервер {
    если ($host = www.example.com) {
        вернуть 301 https://$host$request_uri;
    } # управляется Certbot


    если ($host = example.com) {
        вернуть 301 https://$host$request_uri;
    } # управляется Certbot
        слушать 80 default_server;
        слушать [::]:80 default_server;
        имя_сервера example.com www.example.com;
    вернуть 404; # под управлением Certbot
}

Серверный блок Сайт 2 (субдомен сайта 1)

сервер {
        корень /var/www/sub.example.com/html;
        индекс index.php index.html index.htm index.nginx-debian.html;
        имя_сервера sub.example.com;
        место расположения / {
                try_files $uri $uri/ /index.php?$args;
        }
        расположение ~ \.php$ {
                try_files $uri = 404;
                fastcgi_pass unix:/run/php/php7.4-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                включить fastcgi_params;
        }
    слушать 443 ssl; # под управлением Certbot
    ssl_certificate /etc/letsencrypt/live/sub.example.com/fullchain.pem; # под управлением Certbot
    ssl_certificate_key /etc/letsencrypt/live/sub.example.com/privkey.pem; # под управлением Certbot
# включить /etc/letsencrypt/options-ssl-nginx.conf; # под управлением Certbot
# ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # под управлением Certbot

}
сервер {
    если ($ host = sub.example.com) {
        вернуть 301 https://$host$request_uri;
    } # управляется Certbot
        слушать 80;
        имя_сервера sub.example.com;
вернуть 404; # под управлением Certbot
}

Серверный блок Сайт 3

сервер {
        корень /var/www/example2.com/html;
        индекс index.php index.html index.htm index.nginx-debian.html;
        имя_сервера example2.com www.example2.com;
        место расположения / {
                try_files $uri $uri/ =404;
        }
        расположение ~ \.php$ {
                try_files $uri =404;
                fastcgi_pass unix:/run/php/php7.4-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                включить fastcgi_params;
  }
    слушать 443 ssl; # под управлением Certbot
    ssl_certificate /etc/letsencrypt/live/example2.com/fullchain.pem; # под управлением Certbot
    ssl_certificate_key /etc/letsencrypt/live/example2.com/privkey.pem; # под управлением Certbot
    включить /etc/letsencrypt/options-ssl-nginx.conf; # под управлением Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # под управлением Certbot


}
сервер {
    если ($ хост = www.example2.com) {
        вернуть 301 https://$host$request_uri;
    } # управляется Certbot


    если ($ хост = example2.com) {
        вернуть 301 https://$host$request_uri;
    } # управляется Certbot

        слушать 80;

        имя_сервера example2.com www.example2.com
    вернуть 404; # под управлением Certbot

}

флаг jp
Вам нужно описать, что именно вы получаете, когда ваши сайты «перестают работать».

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.