当前位置:首页 > 技术文章 > 正文内容

http——使用Nginx部署HTTPS服务

arlanguage5个月前 (12-16)技术文章33

https 服务部署

使用 HTTPS 需要生成私钥与公钥;某个文件夹中打开 git bash 输入命令:openssl req -x509 -newkey rsa:2048 -nodes -sha256 -keyout localhost-privkey.pem -out localhost-cert.pem;会生成两个文件 localhost-privkey.pem 跟 localhost-cert.pem;

这里我将生成的证书放在了 nginx 安装目录下的 certs 文件夹中。这样就完成了 https 服务的部署。

    proxy_cache_path cache levels=1:2 keys_zone=my_cache:10m;
    # 表示要启动一个服务
    server {
        # 开启 ssl 加密算法
        listen       443 ssl; # 服务监听的端口-https默认使用端口
        server_name  localhost; # 浏览器访问的 host name
        # 指定对应的证书
        # 相对路径-证书存放的路径
        ssl_certificate_key ../certs/localhost-privkey.pem;
        ssl_certificate  ../certs/localhost-cert.pem;
        # 要代理的路由
        location / {
          # 匹配到 localhost:9999/ 代理到下面的地址
          proxy_pass http://localhost:8888;
        }
    }

#访问 http 跳转到 https 服务

如果我们想在访问 http 的时候直跳转到 https:

    # 增加服务配置 http 跳转到 https
    server {
      listen       8777 default_server;
      listen       [::]:8777 default_server; # 使用 IP 的情况下
      server_name localhost;
      return 302 https://$server_name$request_uri; # server_name 就是前面指定的 localhost,request_uri 就是具体访问的路径
    }
    # 表示要启动一个服务
    server {
        # 开启 ssl 加密算法
        listen       443 ssl; # 服务监听的端口-https 默认使用端口
        server_name  localhost; # 浏览器访问的 host name
        # 指定对应的证书
        # 相对路径-证书存放的路径
        ssl_certificate_key ../certs/localhost-privkey.pem;
        ssl_certificate  ../certs/localhost-cert.pem;
        # 要代理的路由
        location / {
          # 匹配到 localhost:9999/ 代理到下面的地址
          proxy_pass http://localhost:8888;
        }
    }


扫描二维码推送至手机访问。

版权声明:本文由AR编程网发布,如需转载请注明出处。

本文链接:http://www.arlanguage.com/post/243.html

标签: nginx跳转www
分享给朋友:

“http——使用Nginx部署HTTPS服务” 的相关文章

nginx实现内外网访问限制

对于特定新版本的上线,有些功能要求能实现内网用户可以访问验证,而外网实际用户使用不受影响,可以在nginx里实现。需求:1、内网访问http://m.xxx.com/movie/list 跳转到指定的链接http://m.xxx.com/newmovie/;2、外网访问不变nginx配置如下:loc...

Nginx 负载均衡配置教程以及 upstream 详解

一、通用配置在 Nginx 中配置负载均衡非常简单。通过定义一个 upstream 块,你可以指定多个后端服务器用于负载均衡。下面是一个基本的例子:http { upstream myapp { server backend1.example.com;...

Linux系统非root用户下安装Nginx

通常使用Nginx或者Apache作为Web服务器时,默认监听80端口,因此默认会使用root用户去安装,而且,使用yum命令安装时,通常会安装到默认的路径下,默认路径通常是root用户才有执行权限的。如果不需要使用Nginx监听1024以下的端口,且对权限和网络管理比较严格时,能用非root权限解...

php高并发的瓶颈到底在哪

php高并发的瓶颈到底在哪?是同步阻塞?还是nginx+fpm不断创建-销毁进程资源过度消耗?高并发到底是什么问题,是语言问题嘛,为什么说php不适合高并发?求大佬指点从2009年后一直用lnmp,从5.2.17一直到现在的PHP7.4,做的项目无数个,大到日IP10W+、PV50W+的平台,小到日...

5分钟搞懂nginx的location匹配规则

目录概述location介绍location指令语法location配置实例解析location常用场景实战禁止访问.sh后缀的文件实例php7进阶到架构师相关阅读概述这是关于php进阶到架构之Nginx进阶学习的第一篇文章:5分钟搞懂nginx的location匹配规则第一篇:5分钟搞懂nginx...

nginx出现大量499响应码怎么办?

一、问题现象监控发现Nginx服务日志中出现较多的499状态码,499状态码在Nginx中代表的是客户端在服务端返回之前主动断开了连接,由于客户端设置的超时时间为2s,故到达2s未收到服务端响应客户端主动断开了连接造成了499响应码。二、可能的故障点服务器的问题,例如CPU使用率高,队列堵塞,导致无...