当前位置: 移动技术网 > 网络运营>服务器>nginx > Nginx http升级到https的完整步骤

Nginx http升级到https的完整步骤

2019年07月18日  | 移动技术网网络运营  | 我要评论

黄柳武,杨紫琼微博,楚民网

http和https的区别是

有的网站,http打开的时候,页面提示不安全,比如你点击下面的网站 【其实是同一个网站】

http://www.511easy.com/bug/login

http://www.88bugs.com/bug/login

 

怎样才能去掉这个不安全的提示呢? 从http升级到https呗

最终效果看一下:

 

如果目前有一个网站,要怎么升级为https呢

域名: 511easy.com

有域名了就可以申请免费的ssl证书,如下截图,基于各个web服务器的证书,我这边用的是nginx

那然后就需要配置nginx.conf的配置了,大概就是用下面的第三个,前两个是我用来保存的。

 https和http相比,更加安全,不尽然,用jmeter/charles/wireshark/fiddle等,生成一个证书,对https的网站都能进行轻易的抓包,大多数的网站和app,我都能够进行抓包

 upstream tomcatserver1 {
  server 127.0.0.1:8083;
  }
 upstream tomcatserver2 {
  server 127.0.0.1:8085;
  }
   
   
   
server {
  listen  80;
  server_name 511easy.com;
 
 
  location / {
   proxy_pass http://tomcatserver1;
   index  index.htm;
  } 
 }
server {
  listen  80;
  server_name 511easy.com;
 
  location / {
   proxy_pass http://tomcatserver2;
   index  index.htm;
  }  
 }
worker_processes 1;
 
events {
 worker_connections 1024;
}
 
 
http {
 include  mime.types;
 default_type application/octet-stream;
 
 sendfile  on;
 
 keepalive_timeout 65;
 
 server {
  listen  80;
  server_name 88bugs;
  location / {
   proxy_pass http://localhost:8083;
  }
  }
 
 server {
  listen  80;
  server_name jenkins;
  location / {
   proxy_pass http://localhost:8080;
  }
  }
}
worker_processes 1;
 
events {
 worker_connections 1024;
}
 
 
http {
 include  mime.types;
 default_type application/octet-stream;
 
 sendfile  on;
 
 keepalive_timeout 65;
 
 
  server {
  listen 443 ssl;
  server_name www.511easy.com;
  
  ssl     on;
  ssl_certificate  1_511easy.com_bundle.crt;
  ssl_certificate_key   2_511easy.com.key;
  ssl_session_timeout 5m;
   
  location / {
   proxy_pass http://localhost:8083;
  }
 
  }
}

巩固一下这几个缩写名词的含义

http --- hyper text transfer protocol,超文本传输协议,是一种建立在tcp上的无状态连接,整个基本的工作流程是客户端发送一个http请求

https ---- hyper text transfer protocol over secure socket layer 或 hypertext transfer protocol secure

全称是:超文本安全传输协议,可以简单理解为使用ssl加密传输的http协议

http的默认端口是80,https的默认端口是443
ssl是为网络通信提供安全及数据完整性的一种安全协议。

为什么要使用https

为了保护信息传输的安全性,数据完整性。让访客觉得网站可信任,对于国内的网络环境,也可以防止宽带运营商强制给网站挂广告。

如果希望一台服务器上,两个端口,分别用不用的域名执行不同的端口,nginx可以这么配置

worker_processes 1;
 
events {
 worker_connections 1024;
}
 
 
http {
 include  mime.types;
 default_type application/octet-stream;
 
 sendfile  on;
 
 keepalive_timeout 65;
 
 
  server {
  listen 443 ssl;
  server_name www.88bugs.com;
  
  ssl_certificate  1_88bugs.com_bundle.crt;
  ssl_certificate_key 2_88bugs.com.key;
  ssl_session_timeout 5m;
   
  location / {
   proxy_pass http://localhost:8083;
  }
  }
  
  server {
  listen 443 ssl;
  server_name www.511easy.com;
  
  ssl_certificate  1_511easy.com_bundle.crt;
  ssl_certificate_key 2_511easy.com.key;
  ssl_session_timeout 5m;
   
  location / {
   proxy_pass http://localhost:8085;
  }
  } 
}

https://www.88bugs.com/bug/login

https://www.511easy.com/   【目前修改后是指向另一个端口的项目了】

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对移动技术网的支持。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网