博客搭建系列三域名和HTTPS配置

一、域名配置

1.1 购买域名

可以在阿里云上直接搜索域名注册,只要不带com,cn,net等顶级域名的,合适又便宜的域名一大堆,价格看自己的需求,有合适的域名也是可以入手的,算是一种投资吧。

1.2 配置域名解析

在阿里云控制台找到购买的域名,点击解析

添加解析记录

1.3 域名备案

域名是刚购买来时,会收到阿里云短信,提示因信息同步原因至少需要等三天再进行备案,需要耐心等待一下。

备案步骤可以参考App进行ICP备案引导,步骤如下:

  1. 进入控制台,搜索ICP 备案,然后选择自己服务器类型,申请对应的ICP备案服务码

  2. 手机备案上传信息会方便一下,需要下载一下阿里云APP,在首页就有网站备案功能

  3. 填写信息及备案接入产品验证ICP备案类型

  4. 填写主体信息和网站信息

  5. 上传资料

  6. 信息核验

  7. ICP备案初审

  8. 短信验证

  9. 管局审核

1.4 公安备案

关于公安备案填写的信息,阿里云帮助文档有比较详细的介绍,可以参考公安联网备案信息填写指南
大致步骤:

  1. 注册全国互联网安全管理服务平台
  2. 添加一下网站开办主体
  3. 填写网站基本信息
  4. 填写网站负责人信息
  5. 然后看一下提示说明,提交,等待审核就行

二、HTTPS配置

域名备案好后,就可以配置https了,配置https需要SSL证书,阿里云免费证书属于DV SSL证书。SSL证书按照安全等级由高到低可以分为EV SSL证书,OV SSL证书和DV SSL证书。DV SSL证书的特点便是快捷方便的审核方式以及简单的验证方法。DV SSL更适合个人网站或是中小型企业的站点。

2.1 购买证书

阿里云可以免费购买证书,阿里云控制台搜索SSL证书,选择免费证书,点击购买可以免费获取20个证书。

2.2 创建证书

然后点击创建证书,再点击证书申请,填上你的域名,点击下一步,再验证一下就行了。

2.3 下载证书

验证好之后,点击下载,选择nginx,下载好之后里面有两个文件,一个.key.pem文件。

2.4 nginx配置SSL证书

在服务器中找到nginx配置文件,添加上如下信息,注意点:

  • 证书路径,这里路径是相对于nginx.conf文件的路径
  • 如果location中配置proxy_pass http://127.0.0.1:9090;访问失败,可以尝试改成proxy_pass http://阿里云服务器内网ip地址:9090;,通过ifconfig命令可以查看阿里云服务器内网ip地址。
  • 后面error_page需要自己定制一个500.html
server {
    listen 80;
    server_name www.wuqiongda.store;
    #将http转到https
    rewrite ^(.*)$ https://$host$1 permanent;
}

server {
    listen 443 ssl;
    #配置HTTPS的默认访问端口为443。
    #如果未在此处配置HTTPS的默认访问端口,可能会造成Nginx无法启动。
    #如果您使用Nginx 1.15.0及以上版本,请使用listen 443 ssl代替listen 443和ssl on。
    server_name *.wuqiongda.store; #需要将yourdomain.com替换成证书绑定的域名。
    root html;
    index index.html index.htm;
    ssl_certificate cert/6740768_www.wuqiongda.store.pem;  #需要将cert-file-name.pem替换成已上传的证书文件的名称。
    ssl_certificate_key cert/6740768_www.wuqiongda.store.key; #需要将cert-file-name.key替换成已上传的证书私钥文件的名称。
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    #表示使用的加密套件的类型。
    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; #表示使用的TLS协议的类型。
    ssl_prefer_server_ciphers on;

    client_max_body_size 10M;

    location / {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_pass http://阿里云内网ip地址:9090;

        proxy_buffer_size 4k;
        proxy_buffers 8 32k;
        proxy_busy_buffers_size 64k;
        proxy_temp_file_write_size 64k;
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

    deny 49.65.80.249;
    deny 199.19.224.165;

    #error_page  404              /404.html;
    #redirect server error pages to the static page /50x.html

    proxy_intercept_errors on;
    fastcgi_intercept_errors on;

    error_page 400 404 500 503 502 /500.html;
    location = /500.html {
        root /usr/share/nginx/html/;
    }
}

配置好这些就可通过域名直接启动测试了。