https服務器搭建
一丶域名的申請與配置
1.1 域名申請
域名在國外購買. 百度或者google搜索 GoDaddy 注冊一個賬號.登陸即可.
或者點擊鏈接 https://sg.godaddy.com/zh
如上圖所示,隨便搜索一個你想要注冊的域名
如下圖所示
點擊加入購物車,購買域名即可.
1.2 VPS購買
VPS購買一台.選擇國外的. 主要是為了免備案,選擇windows 系統的服務即可. vps或者虛擬主機 服務器都可以.
1.3 域名的解析
有了域名 有了VPS 就可以進行解析.
1.3.1 注冊Dnspod
域名解析服務可以在 GoDaddy上面解析.但是我沒有設置成功.找的資料看 可以使用DnsPod來設置
DnsPod注冊賬號
https://dnspod.cn/ (DnsPod官網)
進入控制台,選擇 DNS解析
1.3.2 DNS域名解析
進入DNS解析.點擊添加域名.我已經添加了所以有記錄.添加域名的時候填寫申請的域名即可
1.3.3 添加DNS解析記錄
添加DNS解析記錄.點擊域名進入一下界面
添加的記錄如下添加一條 A記錄. 主機名為 @ 記錄的值為你VPS的IP地址
1.3.4 復制DNS解析主機
因為域名實在GoDaddy申請的.所以我們只是利用DnsPod幫我們解析. GoDaddy改為DNSPod解析地址即可.
DNSPod解析地址為:
f1g1ns1.dnspod.net.
f1g1ns2.dnspod.net.
可以在解析記錄中看到
1.4 GoDaddy解析
復制了DnsPod的解析地址
f1g1ns1.dnspod.net.
f1g1ns2.dnspod.net.
可以在GoDaddy中進行解析
- 1.右上角點擊我的產品
點擊之后如下圖
可以看到在所有產品和服務中有一個你的域名. 直接點擊DNS .或者點擊右邊的管理. 找到管理DNS
我更傾向於點擊DNS 其實跳轉到的頁面是一樣的
-
-
添加域名服務器
域名服務器因為已經添加過了.所以會直接顯示為下圖
-
如果沒添加過的可以在DNS管理頁面.可以看到有一個DNS域名管理. 只需要將域名管理修改為DNSPod的域名管理即可.
二丶https/http服務器的搭建
2.1 nginx下載
搭建http服務器或者https需要使用一個nginx.網絡上下載一個 nginx 注意,因為VPS是windows的所以下載windows的
下載地址如下:
http://nginx.org/en/download.html
我所使用的是 當前寫文章的時候的最新版 nginx-1.18.0
下載之后是一個zip包
解壓之后如下
2.2 http服務器的搭建
http服務器搭建很簡單. 將我們的 nginx 放到vps上並且解壓生成如上面的目錄
1.打開conf文件夾,找到 nginx.conf.打開nginx.conf
如下圖
注意這里有兩個server. 最先出現的是 搭建http需要使用的. 下面還有一個 https的server
搭建http先使用上面這個
2.修改server中的 listen字段為80 一般默認就是80
3.修改server_name 為你的域名的名字. xxx.com 注意沒有www等前綴.或者直接寫Localhost
4.保存文件
注意的問題: 在文件中很多 字段前面都有 # 標注.這個是注釋.代表這一行不起作用.而我們上面修改的 listten server_name location等如果前面有# 則需要去掉
5.返回到主目錄打開 nginx.exe 即可.
此時訪問你的域名即可. 會顯示一個 英文.提示你訪問成功
2.3 https的搭建
https還是修改 nginx.只不過修改的是 https server.上面我們修改的是http的server
但是修改之前.需要申請 域名對應的SSL證書.
2.3.1 SSL for free網站申請免費SSL域名
搭建https 需要SSL證書.我們使用免費的申請即可
網址
輸入域名即可.(不帶www),最后申請為 *.域名.com or *.域名.cn
這樣申請是為了當生成簽名的時候. 你輸入 https://www.域名 的時候 通配符是www.這樣通過www就可以訪問你的域名了. 而www的配置 我們在DNSPod中 DNS解析中添加了一個A記錄. 主機名叫做 @. @的意思就是任意字符
比如你添加一個A記錄. 主機名字為 test 那么訪問你的域名就是 test.xxx.com test就是前綴.
這里的*就是通配符的意思.就是不管你的主機域名是啥.只要有前綴訪問.那么就會是正確的https
2.3.2 域名驗證以及DNS解析
會有三種方式來驗證你的SSL信息
如下圖:
第一種是FTP方式
第二種是手動上傳驗證
第三種是DNS驗證
其中關於第二種第三種可以參考以下鏈接
http://www.ssldaquan.com/mianfei/sslforfree/ 第二種
https://www.sourismu.me/archives/23/ 第三種
這里使用第三種
生成一個
這里會生成一個主機名 以及以及記錄值
主機名為: _acme-challenge.域名.com 我們不需要后面的 域名.com 只需要前綴
也就是 "." 前面的內容
主機: -acme-challenge
記錄紙: 7jUvVrcRwmqrcCvIRls2NUfKHabTae9CVLT-I6nzA-U
主機2: _acme-challenge
記錄值: QhhWhoaud_Bo8YT-ME97sCg8CXO-ONhCL9nkSkLBYKA
這兩個值在哪里使用.
在 1.3.3 添加DNS解析記錄 標題中. DNSPod中添加一個記錄值即可. 注意這里添加的不是A記錄了. 而是 Txt記錄
如下圖所示:
添加之后等待一會即可.
如果添加不成功. 去GoDaddy的DNS管理中去添加. 因為Godaddy中DNS管理我已經把域名服務器改了.之前的配置無法查看.所以無法截圖.但是當時的記錄值實在GoDaddy添加的.添加過程與上圖一樣.
2.3.3 SSL下載
驗證通過之后直接可以下載SSL了.
這里有一個TTL時間.最少是600秒也就是10分鍾.所以等待10分鍾之后點擊下載SSL證書.如果驗證通過則可以下載.
下載之后如下
有三個文件
兩個證書,一個 private.key
兩個證書加一個key 放到vps服務器上. 我一般在 nginx目錄下建立一個ssl目錄. 這樣一會方便修改
如下圖:
SSL目錄里面
2.4 https搭建
證書申請了.域名解析了. 則可以直接搭建https了.
域名判斷有沒有解析成功.可以在windows電腦上打開CMD 輸入ping 域名 的方式看看有沒有回復.有的話則代表成功了
https搭建同https搭建一樣.只不過有了SSL證書申請以及域名解析. 如果前兩步都做了.則可以直接進行修改
1.服務器上進入 conf文件夾 打開 nginx.conf文件 找到注釋為 #https server的地方
如下圖:
前邊都是有 #注釋的.去掉# 即可. 然后修改的話就是在SSL_certificate位置 導入我們申請的SSL證書. 以及對應的私鑰.
其余的都是默認即可.
最后還是打開 nginx.exe 建議用cmd打開.這樣如果出錯可以看到錯誤. 不過錯誤也會在他log目錄下的 error.log中記錄.可以查看錯誤.
如果想要強制http訪問跳轉到https 則在http server中加一行
rewrite ^(.*) https://$server_name$1 permanent;
三丶網站訪問
此時就可以通過域名
這里我輸入的是 www 開頭來訪問的.這也是為什么申請SSL證書 要*.域名. 如果你不加前綴那么還是會提示你證書出錯.
我上傳到服務器的證書以及key. 其中證書是在服務器上進行安裝的.不知道不安裝會不會影響.如果申請的話可以測試一下.這里說一下.
四丶總結以及注意的問題
4.1 添加文件讓其可以訪問
上面我們輸入域名會提示 welcome to nginx 其實這個文件我們可以修改的.也可以在其目錄下添加我們的新的文件
在 nginx目錄下,進入html目錄可以看到這就是我們網站文件所在的目錄,我們默認訪問的都是它目錄下的index.html文件. 你可以修改自己的.或者添加新文件
如果添加新文件. 要在 http server + https server中進行修改.否則直接訪問是訪問不到的 如下圖
只需要在 index哪里 添加一項即可. 你添加的文件名是啥 就放啥. 比如你在下面加了一個 xxx.txt 那么這里就寫為xxx.txt
網站訪問的時候就是 http(https)😕/www.域名.后綴/xxx.txt
4.2 總結
總結如下:
1.申請一台vps服務器. 要有公網IP . 然后下載 nginx 上傳到服務器.一會會使用
2.在DnsPod中添加解析記錄,(A記錄) 解析記錄添加為公網IP. 記錄DnsPod的域名解析服務器
3.將DnsPod的域名解析服務器復制. 在Godaddy的DNS管理中.修改域名解析服務器為DnsPod的.
4.申請SSL證書. 其中的 txt 主機以及記錄值 可以在Godaddy的DNS管理中 DNS解析位置添加記錄. 或者在DNSPod的DNS解析管理 添加一個 TXT記錄值.
5.下載SSL證書,將KEY以及證書上傳到vps的 nginx目錄. nginx目錄下創建一個SSL目錄. 拷貝到SSL目錄中
6.修改https Server 一切默認. 只是SSl字段位置. 修改為申請的SSL證書以及對應的Key