nginx配了https后,后端怎么请求http啊

我一个服务器上安了一个nginx,放了一组静态网页,然后配置了https协议,但是静态网页里面

请求的是本机上一个springboot的项目,端口是8080,我现在访问不了接口,nginx怎么配置啊

-1

2个回答

像这种nginx负载均衡器都是具备https去壳功能,外部请求访问nginx,采用的协议是https,nginx与web服务器是http协议,使用代理就可以了。我贴一个demo配置供参考:

user root root;

worker_processes  8;

error_log /usr/local/nginx/logs/error.log info;

pid     /usr/local/nginx/nginx.pid;

worker_rlimit_nofile 65535;

events {
        use epoll;
        worker_connections  65535;
}

http {
        include       mime.types;
        default_type  application/octet-stream;
        sendfile        on;
        tcp_nopush      on;
        gzip            on;
        keepalive_timeout 30;
        keepalive_requests 10;
        client_header_buffer_size 4k;

        open_file_cache max=65535 inactive=60s;
        open_file_cache_valid 80s;
        open_file_cache_min_uses 1;
        open_file_cache_errors on;


        geo $whiteiplist {
                default 1;

                127.0.0.1/32    0;
                218.245.64.130/32       0;
                101.90.254.10/32        0;
        }
        map $whiteiplist $limit{
                1 $binary_remote_addr;
                0 "";
        }
        limit_req_zone $limit zone=ips:10m rate=20r/m;

        upstream testLB {
                server 192.168.40.4:101 weight=5;
                server 192.168.40.4:102 weight=5;
                server 192.168.40.4:103 weight=5;

                check interval=3000 rise=2 fall=5 timeout=1000 type=http;
                check_http_send "GET /hello HTTP/1.0\r\n\r\n";
                check_http_expect_alive http_2xx http_3xx;
        }

        server {
                listen       80;
                server_name  lyf-test-http;

                ssl                  on;
                ssl_certificate      /usr/local/nginx/conf/_.xxx.com.crt;
                ssl_certificate_key  /usr/local/nginx/conf/_.xxx.com.key;
                ssl_session_timeout  5m;
                ssl_protocols  SSLv2 SSLv3 TLSv1;
                ssl_ciphers  HIGH:!aNULL:!MD5;
                ssl_prefer_server_ciphers   on;

                location / {
                        limit_req zone=ips burst=5 nodelay;

                        root   html;
                        index  index.html;
                        proxy_pass http://testLB;
                        proxy_http_version 1.1;
                        proxy_set_header X-Real-IP $remote_addr;
                        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                }
                location /nginx/monitor {
                        allow 218.245.64.130;
                        deny all;
                        access_log off;

                        stub_status on;
                }
                location /nginx/backend/health/check {
                        allow xxx.xxx.xxx.xxx;
                        deny all;
                        access_log off;

                        check_status;
                }
        }
}
0

功能很全了,包含IP白名单,IP限流,负载均衡,健康检查,真实IP、监控等功能

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
nginx系列-05-基于openSSL配置HTTPS
说明 创建私有CA私有CA生成自签署的证书 为nginx配置SSL支持 1 生成私钥 2 生成证书颁发请求 3 颁发证书 4 nginx 配置 5 访问 1 说明此处介绍在CentOS6.8系统上,使用openSSL建立私有CA,并颁发证书,以配置 nginx 支持https。2 创建私有CA(私有CA生成自签署的证书)这部分的相关内容请看本人的另一篇文章 http://blog.csdn.ne
使用nginx作为反向代理解决前后端分离时前端https,后端http造成访问无法被加载
最近公司要开发一个项目,移动端,web端,微信小程序.起初我们使用全部是http协议,前后端分离,使用nginx作为静态资源服务器,这种部署方式很常见,网上都可以搜的到.后来因为要让百度搜索录入词条,审核必须是https的网站,于是使用ssl证书申请了https,上一篇博客里面有介绍.至此静态资源都可以正常走https访问!但是,如果和后端做交互,发送ajax请求或者要获取http资源的时候,就会...
nginx反向代理走http+https通道,后端走http通道,导致前台获取不到后台https内容的处理
前言: 目前我公司使用的服务器架构为前台为nginx反向代理,后端为单台web服务器或者集群,目前的配置是这样的,nginx反向代理配置了,http和https通道,但是后端服务器配置为http通道。 平时没有什么大问题,后来用户访问网站的时候,访问https,发现代码中引用的url为http,因此获取不到网页内容。 配置内容: 前台nginx反向代理配置 server { liste...
nginx 前端https +tomcat 后端 http 非80/443端口反向代理的配置方式
2019独角兽企业重金招聘Python工程师标准>>> ...
nginx中配置https的服务页面中引用http资源问题
今天在跟同事联调需求的时候,发现他们请求我们的http地址都被强制转换成了https,还好我们用nginx做了负载。在nginx的https模块中配了相应的代理后,请求可以正常转发。但是发现页面显示的资源不全有问题。解决这个问题需要在location 正则匹配里面增加如下:add_header Content-Security-Policy upgrade-insecure-requests;
https请求Nginx转发给tomcat时变成http问题解决
1 Nginx对应server的location添加配置 将referer的请求scheme信息,用来作为当前请求的scheme,如此可以保证所有的请求都是同一个scheme,不会因为redirect而遗漏信息。 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-F...
nginx通过ssl反代至后端http服务
nginx端配置: http { ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; # server_tokens off; # server_names_hash_buck
前后端分离配置Nginx支持Https和Springboot支持https Rest Api(非常详细)
最近公司官网上线,把官网基本部署好后准备把http请求变成https(根据很多文章说https更安全并且更适合SEO) 因为我们是前后端分离开发,所以这里踩了坑,记录一下. 首先在云服务上下载证书 进行该操作需要有域名,并且域名已备案成功,在本章不做详细描述,可以自行百度. 我们是在阿里云购买的域名,所以本章以阿里云为例: 登录阿里云控制台搜索SSL证书 在阿里云控制台:安全(云盾)->证...
nginx 配置https 并解决重定向后https协议变成了http的问题
配置如下: server { listen 80; server_name localhost; return 301 https://localhost$request_uri; charset UTF-8; location / { root html; ...
nginx 反向代理web应用将https请求转成http请求时,必须注意事项
通过nginx可以实现将https请求转成http请求。有一项配置必须要添加(查看大多数配置均为对此进行提及): proxy_set_header WL-Proxy-SSL true; //weblogic启效 proxy_set_header X-Forwarded-Proto $scheme; //tomcat启效
【nginx】— nginx内部http和https请求的转换
今天遇到一个问题,公司内部系统需要对接交行app接口,内部系统请求地址基于http协议,交行app请求地址基于https协议,此时需要nginx作为中间代理服务器分发请求,并起到负载均衡的效果。为了打通连接,所以需要在nginx内部实现http和https的转换。首先先大概了解下http协议和https协议的差异:    HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和...
nginx配置http转https(tomcat不需要变还是http)
nginx配置http转https(tomcat不需要变还是http) 网站升级https 网站原访问http 保留不变,nginx做重定向,把所有http请求重定向到https https请求转发到tomcat上(tomcat保留开放http) #user nobody; worker_processes 1; #error_log logs/error.log; #error_l...
nginx的http upstream 模块实现客户端访问后端的负载均衡
前后端分离项目配置Nginx、配https及http强制跳转https
本篇文章主要解决以下几个问题: 前后端分离项目如何配置Nginx 配置https协议访问 开启http访问但强制跳转https访问 基本的安装就不多说了,直奔主题。 本文基于ubuntu系统,另外假定有几个前提条件: 主机地址为192.168.10.10 后端项目启动端口为192.168.10.10:8000 前端代码会调用后端的info和test两个url地址 前端静态文件目录 /var/...
Django项目使用nginx和uwsgi配置生产环境(https/http)
快速搭建一个web应用服务器最快的方式就是使用django框架,我们在开发的时候测试时使用python manage.py runserver就可以进行API接口的测试,这样开发起来非常方便,但是如果开发完成后需要部署到生产环境的话就不能使用这样的方式进行部署,针对django的生产环境的部署业界已经有成熟的方案来进行生产环境的部署,那就是nginx+uwsgi。 我们来大概...
nginx https反向代理http的配置方法
某些场景下会使用到https通过nginx反向代理http的服务的情况,配置如下: [code="java"]upstream mobileapi { server 10.1.10.13:80 weight=1 max_fails=1 fail_timeout=60s; } server { server_name ...
利用云负载均衡和nginx实现http转https处理
简写说明:CLB 云负载均衡CVM 云主机http://www.abc.com域名解析->CLB->nginx(rewrite)->CLB->CVM1、CVM2...CVMnhttps://www.abc.com域名解析->CLB->CVM1、CVM2...CVMn为什么不直接:域名解析->nginx->CLB->CVM?域名解析只能指向一个I...
解决Nginx+Tomcat中https转http请求问题
今天遇到一个问题,在配置Nginx的https请求,tomcat使用http时,请求静态资源会报Mixed Content: The page at 'https://a.b.com/detail?id=5' was loaded over HTTPS, but requested an insecure script 'http://a.b.com/xxxxxxx'. This request h
后端tomcat不开启https,用nginx反向代理使网站同时支持http和https协议总结
网站架构如下:1、修改nginx配置文件,注释处都是修改要注意的地方        listen 80;         listen 443 ssl;#添加ssl支持         server_name localhost;         #ssl on;#不要开启,否则只能用https,访问http会报nginx 400错误 ...
Nginx 部署 vue 并且 跨域访问 后端 接口
先说一下我遇到的问题: 前端 后端 分离的项目 部署到一个服务器上,前端用的vue,后端用的 springBoot 我之前的想法认为 我的 前端vue 放到Tomcat容器中,然后后端是 springBoot 项目直接启动 在用Nginx 配置代理 后端的 端口 重点:其实 并不是我认为的那样,是我 前端vue 挂到 Nginx 上 然后 Nginx 代理后端 端口号进行访问 步入正题: 后...
nginx配置http请求重定向到https
nginx配置http请求重定向到https server段{}可以这样写 rewrite ^/(.*)$ http://domain.com/$1 permanent; 或者 rewrite ^ http://domain.com$request_uri? permanent; 或者 rewrite ^(.*)$ https://${server_name}$1 permane...
nginx配置将http请求转发支持ssl双向认证https请求的正向代理
一、引言 nginx 是否支持将http请求转发为https支持ssl双向认证,网上没什么用例可以参考,查询各大开发运维社区了下有几种说法支持: 不支持: 不清楚家祭不忘告乃翁: https://www.bjornjohansen.no/redirect-to-https-with-nginx N多种方法,按照以上支持的小伙伴的说法,一种种去尝试(虽然发现各种不合理,完全没有涉及到客户端密钥
nginx反向代理到Https后,请求Http资源报错blocked mixed-content
第一种方法: <link rel="stylesheet" href="http://cdn.bootcss.com/bootstrap/3.3.5/css/bootstrap.min.css"> 比如这里我用了bootcss的cdn,但是正常情况下这样写是会报blocked mixed-content错误的。 解决方法: <link rel="stylesheet...
nginx 安装ssl证书
server{ listen 80; server_name www.jxcat.com; rewrite ^/(.*)$ https://www.jxcat.com/$1 permanent; } server { listen 443 ; server_name www.jxcat.com jxcat.com; if ( $host != 'www.j...
haproxy 看到的是https,后台是http的原因
https://www.zjtest6.com/admin/api/menu haproxy 日志; Jun 24 13:23:02 localhost haproxy[23205]: 192.168.33.29:56800 [24/Jun/2016:13:23:02.677] www~ appserver_3000/webhost01_8001 2/0/6/12/20 200 154 -
Nginx SSL 证书部署 并配置http重定向到https
取自腾讯云文档结合自己站点,总结如下: 1.获取证书 证书申请下来之后 ,下载证书,解压之后图片: 这里我们使用 nginx 服务器 ,打开文件夹如下: 2.部署证书 将域名 www.bug404.club 的 证书文件 1_www.bug404.club_bundle.crt 、 私钥文件 2_www.bug404.club.key 保存到同一个目录,例如 /usr/local/nginx/...
nginx代理https 转发成http和websocket的配置
# For more information on configuration, see: #   * Official English Documentation: http://nginx.org/en/docs/ #   * Official Russian Documentation: http://nginx.org/ru/docs/ user nginx; worker_proces...
nginx 配置http请求重定向至https
在某些站点配置并监听https协议之后,则希望用户访问http的时候也跳转至https,那么需要在nginx中将http重定向至https协议,配置如下:server{ listen 80; #侦听80端口 server_name host.domain.com; location / { rewrite ^(.*)$ https://$server_
nginx服务器由http转换成https
1、要有一个外网ip 2、把外网ip绑定一个域名 3、用这个域名去申请https的证书 4、配置nginx
Nginx配置https 后 http强制跳转到https的方法
我司的环境是,同一个ip,绑定多个2级域名,访问每个2级域名都要有https(解决单IP多站点 https://域名乱跳网站的问题) 我司采用的是方案5 核心思路:重定向,只是写法不同     一、Nginx安装(略) 安装的时候需要注意加上 --with-http_ssl_module,因为http_ssl_module不属于Nginx的基本模块。 Nginx安装方法: 1 ...
nginx配置https同时http请求转发到https上
#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1...
反向代理https后redirect出现问题
Mix Content:The page at 'https://www.abc.com...' was loaded over HTTPS, but requested an insecure form action 'http://www.abc.com...'.This request has been blocked;the content must be served over HTTP
关于Nginx配置SSL https转http,服务端获取的请求是http的解决方法
Nginx代理中配置: proxy_redirect http:// https://; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_heade...
Nginx环境下http和https(ssl)共存的方法
给nginx配置SSL证书之后,https可以正常访问,http访问显示400错误,nginx的配置如下:server {            listen 80 default backlog=2048;            listen 443;            server_name wosign.com;            root /var/www/html;       ...
https post请求,Nginx报405错误
最近在做微信开发,公司打算对产品增加微信支付功能,但是微信支付费率较高,于是与某微信支付的第三方合作,利用他们的平台,完成微信支付。经过测试,基本确定使用公众号支付方式。但在联调时,遇到一个非常坑的问题。一开始掉进去了,和同事挣扎了一天,最终发现只是个很简单的问题。         微信支付成功后,会有后台通知,微信通知平台,平台再通知我们的服务端。但在通信时,服务端接收信息失败。一开始
nginx部署http服务以及转换成https
我这里是把http的服务放到了home下面,index.html的页面在/home/wwwroot/default下,这里指向index.html的路径,server_name指向要重载的域名,这个域名需要注意的是一定要已经生效了的,可以是一级域名也可以是二级域名基本到这里就完成了http转换成https这里获取SSL认证就不记录了,阿里云比较简单可以获取下来如图所示修改配置完成了重启nginx,...
使用nginx方式实现http转换为https
   最近在写一个小程序,因为小程序官网上必须要使用https,之前网站都是使用的http,而且使用的阿里云服务,于是就在阿里云上购买的ssl服务,以下是配置过程。    1.首先是去阿里云上购买ssl,当然有免费版,但是只能支持一个域名,而且同一个域名只能购买20个证书,各个明细子域名都算一个域名    2.购买ssl证书之后去证书控制台,这个时候需要补全资料,补全之后等待审核,...
后台HttpRequest访问https接口的方法
因为项目需要,写了一个后台调用https接口的方法,记录下来,以备后用: 1. 封装的访问方法 using System.Collections.Generic; using System.IO; using System.Net; using System.Net.Security; using System.Security.Cryptography.X509Certificates;
http升级https的一些坑(Nginx)
获取证书 升级到https第一步就是获取一张证书。 阿里云有免费的SSL证书(据说可以一个账号可以申请20个?) 然后申请步骤跳过。。。 申请完成大概就是酱紫的 点击下载进入到证书下载页面 证书放好 修改配置 官方默认给的配置如下 server { listen 443; server_name localhost; ssl on; ...
nginx https配置后无法访问,解决方法。
问题:阿里云服务器配置了HTTPS安全协议,域名、证书和服务器conf配置都已配置正常。ps其他服务器也是按照阿里教程配置一切正常。但是今天这台服务器配置好了访问不了。   查看了一切帖子,发现可能是服务器端口问题,443端口异常。   通过 netstat -ano 或者 netstat -anp 查看防火墙开的端口。 或者直接 进入防火墙配置文件看配置。(直接查看比较方便) vim