溫馨提示×

Debian Nginx SSL如何配置多域名

小樊
81
2025-05-02 16:54:17
欄目: 云計算

在Debian系統上使用Nginx配置多個域名的SSL,可以按照以下步驟進行:

1. 安裝Nginx

如果你還沒有安裝Nginx,可以使用以下命令進行安裝:

sudo apt update
sudo apt install nginx

2. 獲取SSL證書

你可以使用Let’s Encrypt免費獲取SSL證書。首先,確保你已經安裝了Certbot:

sudo apt install certbot python3-certbot-nginx

然后,為每個域名運行Certbot來獲取證書:

sudo certbot --nginx -d example.com
sudo certbot --nginx -d example.org

Certbot會自動修改Nginx配置文件以啟用SSL。

3. 配置Nginx

你需要為每個域名創建一個單獨的server塊。以下是一個示例配置:

示例配置文件 /etc/nginx/sites-available/example.com

server {
    listen 80;
    server_name example.com www.example.com;

    location /.well-known/acme-challenge/ {
        root /var/www/certbot;
    }

    location / {
        return 301 https://$host$request_uri;
    }
}

server {
    listen 443 ssl;
    server_name example.com www.example.com;

    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

    root /var/www/html/example.com;
    index index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }
}

示例配置文件 /etc/nginx/sites-available/example.org

server {
    listen 80;
    server_name example.org www.example.org;

    location /.well-known/acme-challenge/ {
        root /var/www/certbot;
    }

    location / {
        return 301 https://$host$request_uri;
    }
}

server {
    listen 443 ssl;
    server_name example.org www.example.org;

    ssl_certificate /etc/letsencrypt/live/example.org/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.org/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

    root /var/www/html/example.org;
    index index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }
}

4. 啟用站點

創建符號鏈接以啟用這些站點:

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
sudo ln -s /etc/nginx/sites-available/example.org /etc/nginx/sites-enabled/

5. 測試Nginx配置

在重新加載Nginx之前,測試配置文件是否有語法錯誤:

sudo nginx -t

6. 重新加載Nginx

如果沒有錯誤,重新加載Nginx以應用更改:

sudo systemctl reload nginx

7. 驗證SSL證書

你可以使用瀏覽器訪問你的域名,或者使用以下命令驗證SSL證書是否正確安裝:

sudo openssl s_client -connect example.com:443 -servername example.com

通過以上步驟,你可以在Debian系統上使用Nginx配置多個域名的SSL。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女