[Domain]註冊網域並綁定到主機

Aaron Lu
3 min readMar 6, 2019

--

  1. 在 GoDaddy 上購買網域
  2. 設定 DNS 的 A 紀錄
  3. 在 NGINX 產生 CSR 憑證(.csr & .key)
  4. 利用伺服器產生的 CSR 憑證向 GoDaddy 申請 SSL 憑證
  5. 驗證並下載 SSL 憑證
  6. 合併下載的 SSL 憑證(domain.crt & bundle.crt)
  7. 設定 NGINX 讓網頁支援 HTTPS 加密連線

購買網域

設定 DNS

在 NGINX 產生憑證

$openssl req -new -newkey rsa:2048 -nodes -keyout yourdomain.key -out yourdomain.csr

向 GoDaddy 申請 SSL 憑證

打開 .csr 文件,並複製所有文字貼到 GoDaddy 帳戶中的 SSL 註冊表格。

驗證並下載 SSL 憑證

  1. 登入當初申請網域名稱的信箱,收取驗證信件。
  2. 至 GoDaddy 的 SSL 憑證管理頁面下載簽署完成的憑證。

合併下載的 SSL 憑證

$ cat www.example.com.crt bundle.crt > www.example.com.chained.crt

設定 NGINX 讓網頁支援 HTTPS 加密連線

server {
listen 443 ssl;
listen [::]:443 ssl;
server_name www.example.com;
ssl_certificate www.example.com.crt;
ssl_certificate_key www.example.com.key;
...
}

Redirect All HTTP to HTTPS

server {
listen 80 default_server;
server_name _;
return 301 https://$host$request_uri;
}

Redirect Specific Sites

server {
listen 80;
server_name foo.com;
return 301 https://foo.com$request_uri;
}

App Configuration

server {
listen 443 ssl default_server;
server_name foo.com;
}
server {
listen 443 ssl;
server_name bar.com;
}
# and so on...

--

--

Aaron Lu

Software Engineer with experience in languages such as HTML5, CSS3, JavaScript, Node.js and MySQL, frameworks such as React, React-Native, express and Nest.js