通過Nginx反向代理配置/.well-known/pki-validation/fileauth.txt步驟實例


最近在某雲平台上申請了SSL證書(https),SSL證書申請或者續期過程中需要進行域名驗證。

如果域名驗證類型選擇【文件】方式,等你提交申請后,要在目標域名對應的服務端上傳一個文件(通常是一個.txt文件),然后通過公網可訪問URL的方式訪問這個文件,以此來證明你的域名是在你的服務器上。

即,如果你申請證書的域名是 https://域名,就得 https://域名/.well-known/pki-validation/fileauth.txt 能被公網訪問到。最簡單的方法是把這個文件直接放到web應用程序對應的目錄下。如果是通過反向代理到集群環境,在很多服務器上放置和更換這個文件就不划算了,或者是由於其他原因不方便暴露應用程序路徑的。可以直接在反向代理上面放置然后使它被訪問到。我這里反向代理用的是Nginx。方法如下:

Nginx配置http方式訪問:http://域名/.well-known/pki-validation/fileauth.txt 規則:

server {
    listen       80;
    server_name  localhost www.test.com;

    #charset koi8-r;
    access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

#http://域名/.well-known/pki-validation/fileauth.txt
    location /.well-known/pki-validation/ {
        root   /home/wwwroot/default/;
        #alias   /home/wwwroot/default/.well-known/pki-validation/;
        index  index.html index.htm;
    }

    #其他配置規則

}

 

Nginx配置https方式訪問:https://域名/.well-known/pki-validation/fileauth.txt 規則:

server {
    listen       443;
    server_name  localhost www.test.com;

    #charset koi8-r;
    access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

#https://域名:443/.well-known/pki-validation/fileauth.txt
    location /.well-known/pki-validation/ {
        root   /home/wwwroot/default/;
        #alias   /home/wwwroot/default/.well-known/pki-validation/;
        index  index.html index.htm;
    }

    #其他配置規則

}

 

例如上面兩段Nginx訪問規則,將 fileauth.txt 文件放在 /home/wwwroot/default/.well-known/pki-validation/ 目錄下。通過root指定服務器根目錄,或者alias指定當面路徑對應的服務器目錄都是可以的,寫法分別如上。並確認服務器目錄下文件訪問權限正確。

然后重啟Nginx。通過瀏覽器訪問效果如下:

 

【關鍵點】:

1,Nginx配置規則和文件放置目錄;

2,如果以前在瀏覽器有訪問過,請清除緩存后訪問,或者關閉並重新打開瀏覽器無痕模式訪問。

3,Nginx集群請在最外層,或每一台上配置。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM