Mac下 Ubuntu 16.04 配置http、https

序言:

以下代码基于Mac环境完成

工具准备:

1.Transmit:
链接: https://pan.baidu.com/s/1bFjnf2kCWRHrLO1OceU9rQ密码: 6bh2
2.Sublime Text
链接: https://pan.baidu.com/s/1TimZ6aFYGdV-pXx8bSs90Q密码: tgtk

PS:
Transmit:主要用于后面配置服务器的操作,简单粗暴的软件,我喜

Sublime Text:文本编辑器

第一部分:先购买云服务器、域名等。
    这里域名可不买,但以下实验效果会购买域名并配置服务器,由读者自身选择情况。

1.自己挑选域名,然后购买,在域名控制台下点击解析->添加解析


Mac下 Ubuntu 16.04 配置http、https_第1张图片
1.解析.png

2.在域名里申请SSL证书


Mac下 Ubuntu 16.04 配置http、https_第2张图片
2.申请SSL证书.png

3.完成以上操作后,在阿里云或腾讯云上购买香港服务器,如图:


Mac下 Ubuntu 16.04 配置http、https_第3张图片
3.购买香港服务器.png

4.进入服务器,然后点击远程连接玩玩,会出现下列情况


Mac下 Ubuntu 16.04 配置http、https_第4张图片
4.远程连接密码.png

Mac下 Ubuntu 16.04 配置http、https_第5张图片
4.1远程连接密码.png
因为在浏览器上远程连接,操作起来不方便简直想吐血,这里介绍下用本地终端远程连接服务器

5.但是先要修改我们的服务器密码


Mac下 Ubuntu 16.04 配置http、https_第6张图片
5.修改密码和复制公网ip.png

Mac下 Ubuntu 16.04 配置http、https_第7张图片
6.终端中新建远程连接.png

Mac下 Ubuntu 16.04 配置http、https_第8张图片
7.Mac终端远程连接.png

Mac下 Ubuntu 16.04 配置http、https_第9张图片
8.第一次进入终端.png
第二部分:nginx配置Http

1.在Ubuntu下,直接使用 apt-get安装Nginx

~$ sudo apt-get update
~$ sudo apt-get install nginx -y

2.完成后,开启Nginx

~$ sudo /etc/init.d/nginx start

3.此时在Safari访问 http://自己的域名 就会看到 Nginx的欢迎页面,即配置成功

Mac下 Ubuntu 16.04 配置http、https_第10张图片
9.配置nginx成功的页面.png
第三部分: nginx配置Https

1.先下载我们的SSL证书,以阿里云为例

8.1 下载SSL证书.png

Mac下 Ubuntu 16.04 配置http、https_第11张图片
8.2下载SSL证书.png

Mac下 Ubuntu 16.04 配置http、https_第12张图片
8.3下载SSL证书.png

Mac下 Ubuntu 16.04 配置http、https_第13张图片
8.4下载SSL证书.png

Mac下 Ubuntu 16.04 配置http、https_第14张图片
8.5下载SSL证书.png

2.将下载下来的 SSL 证书(cert文件夹) 通过 Transmit 拖动到文件浏览器 /etc/nginx 目录下。


Mac下 Ubuntu 16.04 配置http、https_第15张图片
10.在Transmit登录服务器.png

Mac下 Ubuntu 16.04 配置http、https_第16张图片
11.进入Transmit.png

Mac下 Ubuntu 16.04 配置http、https_第17张图片
12.进入/etc/nginx并且拖进ssl文件.png

3.修改 /etc/nginx的权限

~$ sudo chmod a+rw /etc/nginx
  1. 在/etc/nginx/conf.d 目录下创建ssl.conf 文件
~$ cd /etc/nginx/conf.d
~$ sudo touch ssl.conf
~$ sudo chmod a+rw ssl.conf

5.通过Transmit用Sublime Text打开ssl.conf

Mac下 Ubuntu 16.04 配置http、https_第18张图片
13.打开nginx_ssl_conf文件.png

Mac下 Ubuntu 16.04 配置http、https_第19张图片
13.1.配置ssl_conf文件.png
// 代码如下:
// 意义:设置域名在http、https下都可访问,并且将本地的文件存放到/usr/local/sources/下,这里的操作很重要
server {
        listen 80; # 同时添加监听80端口
        listen 443 ssl; # 需要在443端口后添加ssl
        server_name www.crios.cn; # 改为绑定证书的域名
        # ssl 配置
        ssl on;
        ssl_certificate cert/1529030012921.pem; # 改为自己申请得到的 pem 文件的名称
        ssl_certificate_key cert/1529030012921.key; # 改为自己申请得到的 key 文件的名称
        ssl_session_timeout 5m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
        ssl_prefer_server_ciphers on;

        location / {
            proxy_pass http://127.0.0.1:8765;
        }

        location ~ .*\.(ico|png|jpg|jpeg|JPG|PNG|JPEG|bmp|html|js|xml|svg)$ {
            root /usr/local/sources/;
        }
 }

6.command + s 保存配置,重启Nginx

~$ sudo nginx -s reload
  1. 通过Transmit 进入到 /usr/local目录,在本地新建一个sources文件夹, 拖动到/usr/local目录下

8.为了展示效果,我在本地新建一个crios.html文件,通过Transmit拖到刚刚的sources文件下,crios.html里的代码如下:

CRiOS

9.此时在Safari浏览器访问https://www.crios.cn/crios.html,会出现如下效果图:

Mac下 Ubuntu 16.04 配置http、https_第20张图片
17.配置https成功的效果图.png
到这里,Ubuntu配置http、https已完成

你可能感兴趣的:(Mac下 Ubuntu 16.04 配置http、https)