ฉันใช้เซิร์ฟเวอร์ 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:
sudo 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;
server_name example.com www.example.com;
ที่ตั้ง / {
try_files $uri $uri/ /index.php?$args;
}
ตำแหน่ง ~ \.php$ {
try_files $uri =404;
fastcgi_pass ยูนิกซ์:/run/php/php7.4-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
รวม fastcgi_params;
}
ฟัง [::]:443 ssl ipv6only=เปิด; # จัดการโดย 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;
server_name 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;
server_name sub.example.com;
ที่ตั้ง / {
try_files $uri $uri/ /index.php?$args;
}
ตำแหน่ง ~ \.php$ {
try_files $uri =404;
fastcgi_pass ยูนิกซ์:/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;
server_name sub.example.com;
กลับ 404; # จัดการโดย Certbot
}
เซิร์ฟเวอร์บล็อกไซต์ 3
เซิร์ฟเวอร์ {
รูท /var/www/example2.com/html;
ดัชนี index.php index.html index.htm index.nginx-debian.html;
server_name example2.com www.example2.com;
ที่ตั้ง / {
try_files $uri $uri/ =404;
}
ตำแหน่ง ~ \.php$ {
try_files $uri =404;
fastcgi_pass ยูนิกซ์:/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
}
เซิร์ฟเวอร์ {
ถ้า ($host = www.example2.com) {
ส่งคืน 301 https://$host$request_uri;
} # จัดการโดย Certbot
ถ้า ($host = example2.com) {
ส่งคืน 301 https://$host$request_uri;
} # จัดการโดย Certbot
ฟัง 80;
server_name example2.com www.example2.com
กลับ 404; # จัดการโดย Certbot
}