阿里云服务器配置免费https服务

过程总述

  1. 购买服务器,购买域名,备案
  2. 申请ssl证书
  3. DNS验证
  4. 上传证书,配置nginx
  5. 很关键,打开端口!!!阿里云的443端口默认是不打开的

1.购买服务器,域名,备案

服务器我是买的阿里云的,域名也是在阿里云上买的,注意一点,如今域名必须备案才能用,因此建议先买域名着手备案,等备好案再买服务器。php

粘个阿里云推广的链接,点进去有新人红包
https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=ppef3go2html

若是是我的开发使用,服务器不用买太贵的,1M网速2G内存的就够用了。
域名若是不是商用,也不用太好,我就用的.top,cn和com基本没多少好听的域名了。并且还很贵。nginx

2.申请ssl证书

https://freessl.cn/
申请Let's Encrypt的ssl证书web

好比咱们如今要给example.top申请证书安全

  1. 注册个账号,不注册也行,可是注册了以后,之后证书若是不当心删了,这里还能够在下载。邮箱注册,打开邮件验证,而后回到首页。
  2. 在首页输入你要的输入的域名,若是你要只用二级域名好比www.example.top,就输这个二级域名就行,或者你要全域名,就输入*.example.top,这样之后全部二级域名就均可以用https服务了。咱们这里使用全域名。
    image
  3. 点击建立,确认。而后会给一个私钥的压缩包,留下来,先不用。而后界面上进入DNS验证的过程。
    image

3. DNS验证

  1. 首先说说这个东西是干吗的,我理解的,就是给你发的时候,我得确认你有这个网站的权限,而后能让我承认,我才给你发证,表示我认可这个证保护这个网站。
  2. 先不要点击验证,若是失败会有十分钟的间隔以后才能再验证,点击配置完成,检测一下进入检测界面。检测界面这样,可是数据不全,先不用点,还要用刚才那个界面的数据。
    image
  3. 打开你的阿里云网站,进入控制台->域名->点击你的域名->而后域名解析。到这个界面就对了。
    image
    image
  4. 添加dns验证要的信息。点击添加记录,在最开始的freessl的那个页面,就是查询验证以前的那个界面。
  5. 一共有两个,新建两个记录,对应关系同样,如图。
    image
  6. 测试一下,应该经过,而后回到freessl那里,点击点击验证,经过以后会发给你一个压缩包,里边就是证书啦。

4. 上传证书,配置nginx

  1. 刚才得到的最后的证书在那个压缩包里,解压是这样的内容,若是丢了,能够去网站再下载一下(若是刚才没有注册登录,就只能再从新申请一遍)。
    image
  2. scp复制到服务器上,或者搭建了ftp服务也能够。(不会的自行百度啦,scp仍是很简单的)。好比个人吧 scp private.key root@112.125.88.123:/root/,而后要求输入密码,文件就过去了。把两个文件都传过去。
  3. 进入服务器。把刚才的两个文件复制到nginx下新建的一个目录下,个人放在/usr/local/nginx/cert/下了。
  4. 贴上个人nginx配置文件。
server {
    listen 443;
    ssl on;
    ssl_certificate /usr/local/nginx/cert/full_chain.pem;
    ssl_certificate_key /usr/local/nginx/cert/private.key;
    keepalive_timeout   70;
    server_name example.top;
    root /data/webroot/example;
    charset utf-8;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
        fastcgi_param   HTTPS               on;
        fastcgi_param   HTTP_SCHEME         https;

    location / {
        index  index.php index.html index.htm;
        if (-e $request_filename) {
            break;
        }

        if (!-e $request_filename) {
            rewrite ^/(.*)$ /index.php/$1 last;
            break;
         }
    }
    location ~ .+\.php($|/) {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
    #    fastcgi_pass 127.0.0.1:9000;
        fastcgi_pass unix:/tmp/php-cgi.sock;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    access_log logs/calendar.yimeidan.access.log;
    error_log logs/calendar.yimeidan.error.log;
}

server {
listen    80;
server_name calendar.yimeidan.top;
return    301 https://$server_name$request_uri;
}

5. 必定要记得打开端口!!!

最后的最后,很关键,打开端口!!!打开端口!!!打开端口!!!
阿里云的443端口默认是不打开的,须要以下操做打开端口。(80端口也是须要这么打开的。)
点开你的阿里云控制台,找到你要用的服务器,而后点更多->网络和安全组->安全组配置。
image
点配置规则,添加安全组规则。添加内容如图。你也能够这样配好80端口。
image服务器

尾声

理论上完活啦,有问题能够留言交流。
成品截图:
image网络


写文不易,若是以为帮到您了,能够支持下。d=====( ̄▽ ̄*)b。
阿里云新人红包:https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=ppef3go2
阿里云产品开年活动:https://www.aliyun.com/acts/product-section-2019/new-users?userCode=ppef3go2
阿里云商标注册服务:https://tm.aliyun.com/?userCode=ppef3go2session

相关文章
相关标签/搜索