Nginx上开启https,  后端使用Tomcat,  两者间走http协议, 但发现如果tomcat应用存在跳转时, 则客户端浏览器会出现400 Bad Request的错误, 通过抓包发现原因是302跳转响应的Location头中的URL是http协议的,  在tomcat的端号采用非标准80端口时会导致客户端出现400.  解决方案是修改nginx.conf, 让nginx将302跳转响应能智能的修改location头域的内容,  即添加以下一行到配置中的server段 问题:浏览器打开…
[本地HTTPS]①.<Connector SSLEnabled="true" clientAuth="false" keystoreFile="C:\tool\apache-tomcat-6.0.35\tomcat.keystore" keystorePass="1a2s3d4f5g" maxThreads="150" port="443" protocol="HTTP…
在网上搜了一下,内容不是非常完好. 现进行整理,做个学习笔记,以备以后使用. (1)进入到jdk下的bin文件夹 (2)输入例如以下指令"keytool -v -genkey -alias tomcat -keyalg RSA -keystore d:/tomcat.keystore" d:/tomcat.keystore是将生成的tomcat.keystore放到d盘根文件夹下.注意若要放到c盘,在win7系统下,须要以管理员身份进入到命令行中进行操作.否则是无法创建tomcat.k…
目录 ----------------------------------------- [CAS单点登录视频教程] 第06集[完] -- Cas认证 学习 票据认证FormsAuthentication   [CAS单点登录视频教程] 第05集 -- CAS服务器安装   [CAS单点登录视频教程] 第04集 -- tomcat下配置https环境   [CAS单点登录视频教程] 第03集 -- 配置 tomcat的 ssl   [CAS单点登录视频教程] 第02集 -- 安装CAS   [C…
在网上搜了一下,内容不是很完善.现进行整理,做个学习笔记,以备以后使用. (1)进入到jdk下的bin目录 (2)输入如下指令“keytool -v -genkey -alias tomcat -keyalg RSA -keystore d:/tomcat.keystore” d:/tomcat.keystore是将生成的tomcat.keystore放到d盘根目录下.注意若要放到c盘,在win7系统下,需要以管理员身份进入到命令行中进行操作,否则是无法创建tomcat.keystore的.本例…
0. 环境信息 Linux:Linux i-8emt1zr1 2.6.32-573.el6.x86_64 #1 SMP Wed Jul 1 18:23:37 EDT 2015 x86_64 x86_64 x86_64 GNU/Linux nginx:nginx version: openresty/1.9.3.2 Tomcat:Server version: Apache Tomcat/7.0.64 1. 问题描述我们开发的客服系统,因为消息的到来,有的谷歌浏览器(V62)不支持http的消息提…
1.1 生成keystore文件及导出证书 步奏1:打开控制台,运行: %JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA (如果你已经配置过javahome,直接输入) keytool -genkey -alias tomcat -keyalg RSA 首先会要求输入密码,这里使用123123 步奏2:输入基本信息 (除了名称与姓氏其他都可以直接回车) 输入密钥库口令: 再次输入新口令: 您的名字与姓氏是什么? [Unknown]…
nginx做反向代理时,需要把请求头信息一起发送给tomcat,不然tomcat中的域名绑定就无法发挥作用了. 今天又遇到https请求被拦截器重定向到登陆页居然变成http的问题,导致小程序无法访问(汗...) 之前讲过nginx做反向代理时要把请求头一起发给tomcat(https://www.cnblogs.com/yanglei-xyz/p/10771846.html) #nginx的反向代理配置location / { proxy_pass http://192.168.0.3:808…
问题:Android7.0系统,使用fiddler不能抓取https请求 解决方法:  1.在源码res目录下新建xml目录,增加network_security_config.xml文件 (工程名/app/src/main/res/xml/network_security_config.xml)   network_security_config.xml文件内容为: <network-security-config> <base-config cleartextTrafficPermi…
1        问题描述 项目前端模板使用Thymeleaf,在对各种URL进行格式化输出时,都使用@{uri}代码.它会自动读取项目部署的虚拟路径,添加到URI的前端输出. 真实测试和生产环境中,我们使用nginx+Tomcat的部署模式,这就会部署带来一个限制:ngxin配置proxy时,需要同后端application使用相同的context path. 一个比较典型的测试场景:同一个Tomcat,部署多个应用:同一个nginx,配置这三个应用的proxy,但要求都使用独立域名进行访问,…
解决js加载使用http的问题 控制台错误提示: Mixed Content: The page at '' was loaded over HTTPS, but requested an insecure script ''. This request has been blocked; the content must be served over HTTPS. 解决方案: 1.Nginx对应server的location添加配置 proxy_set_header Host $host; p…
在nginx里location里面设置 proxy_buffering off; 或者 proxy_buffering on; proxy_buffers 4 4k; proxy_busy_buffers_size 8k; proxy_max_temp_file_size 1024m;…
一.  创建tomcat证书 这里使用JDK自带的keytool工具来生成证书: 1. 在jdk的安装目录\bin\keytool.exe下打开keytool.exe 2. 在命令行中输入以下命令: keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore "g:\tomcat.keystore" 以上命令将生产一对非对称密钥和自我签名的证书g:\tomcat.keystore 注意:…
1. #强制使用https跳转 return 301 https://$server_name$request_uri;rewrite ^(.*)$ https://${server_name}$1 permanent; http://www.cnblogs.com/bass6/p/7606965.html 2. 使用setcap 在root用户下执行命令: 1 #setcap cap_net_bind_service=+eip ./nginx 提示:注意文件的颜色变化   参考: https:…
Web API接口站点,引入了swagger来实时生成在线的api文档,也便于api接口的在线测试.swagger:The World's Most Popular Framework for APIs. 本地测试没有问题. 发布到生产,问题出现了.——线上部署的站点是用nginx做的3个节点的负载.nginx配置了公开的域名,并且与3个节点iis上的站点做了映射.3个单节点的端口不是默认的80,由此问题产生了:当访问swagger时,swagger自动获取的文档的url包含了这个端口,因为站点…
upstream emove_pools { server ; check interval= rise= fall= timeout=; } #强制使用https跳转 server { listen ; server_name test.ok.com; https://$server_name$request_uri; location / { proxy_pass http://name_pools; } } # server { #listen ; listen ; server_name…
步骤: 1 创建 .keystore 文件 JDK中自带了keytool工具用于生成证书文件 keytool工具在$JAVA_HOME/bin 目录下可以使用命令 keytool -genkey -alias tomcat -keyalg RSA 来创建数字证书生成证书步骤比较多,具体用法参照 使用keytool.exe生成数字证书 2 打开tomcat/conf/server.xml配置文件,启用 SSL HTTP/1.1 连接器,端口 8443 <Connector port="844…
AllowAutoRedirect property is true, the Referer property is set automatically when the request is redirected to another site.">如果 AllowAutoRedirect 属性为 true,则 Referer 属性在请求被重定向到另一个站点时自动设置. Referer HTTP header, set the Referer property to null.&quo…
iOS9中 因为系统要求所有的请求都必须使用https, 所以发送http请求会失败,如果想让程序能够兼容http请求 在info.plist中添加以下代码: 这里需要做的是右键info.plist文件, 显示源代码, 在源代码中进行添加下面这几行代码. <key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dic…
安装过程略. 1.证书准备 本地调试,可以安装自签名证书,安装方法参考https本地自签名证书添加到信任证书访问 2.修改配置文件 将上面的配置文件拷贝到conf目录,添加或者修改节点如下 http{ server { listen 443 ssl; server_name www.aaa.com; ssl on; ssl_certificate www.aaa.com+5.pem; ssl_certificate_key www.aaa.com+5-key.pem; ssl_session_c…
我们有2台内部http服务(nginx): 201:这台服务器部署的服务是account.api.91160.com,这个服务是供前端页面调用: 202:这台服务器部署的服务是hdbs.api.91160.com,    这个服务是供前端页面调用: 近期发现,这2台服务器的网络连接中,TIME_WAIT 数量差别很大,201的TIME_WAIT大概20000+,202的TIME_WAIT大概1000 ,差距20倍:2台的请求量差不多,都是以上内部调用的连接,且服务模式也没有什么差异,为什么连接数…
一 :nginx负载均衡 当Tomcat当做独立的Servlet容器来运行时,可看做是能运行Java Servlet的独立Web服务器. 此外 Tomcat还可以作为其他Web服务器进程内或者进程外的Servlet容器,从而与其他Web服务器集成(Apache Nginx IIS 等) 集成的意义在于:对于不支持运行java Servlet的其他Web服务器,可以通过集成Tomcat来提供运行Servlet的功能. ——————————Tomcat与JavaWeb开发技术详解(孙卫琴的一本书)…
目录 1.Fiddler抓取HTTPS过程 2.拓展:SSL/TLS证书握手原理 3.Fiddler抓取HTTPS原理总结 4.Fiddler抓取HTTPS设置 步骤1:配置证书 步骤2:勾选设置 5.查看证书是否安装成功 6.HTTPS选项界面说明 7.无法抓取HTTPS请求 8.Firefox浏览器中捕获HTTPS请求 (1)查看Firefox浏览器的网络代理 (2)配置Firefox浏览器的Fiddler证书 9.总结: 1.Fiddler抓取HTTPS过程 第一步:Fiddler截获客户…
随着AppleStore对APP的审核越来越严格,客户端请求服务端API的方式大多数都变更为了https,在更安全的同时又引起了另外一个问题——本地抓包开发调试的不便. 一般来说,我们在开发API的时候,本地环境基本都是不支持https的(若要支持https则需要安装证书,比较麻烦),抓包神奇Fiddler由于拥有出色的功能,可以对请求进行拦截和处理,因此我在想能不能有一种办法,把所有的https请求自动转换成http呢,这样不就方便了吗! 前期曾经尝试过一种方法,那就是Fiddler里的Aut…
目录 前言 问题来了 问题又来了 问题分析 困惑 转机 后续 前言: 这是我上周工作过程中的一次解决问题的过程.解决的是nginx负载环境下,因为应用程序异常导致某一请求被多节点站点重复处理的问题. 我整理这个复盘的过程时,在给这个记叙文命名时思考了一段时间. 从业务角度说,应该是“一次短信重复发送问题的解决过程”,如果这样命名,过于土气:从技术角度说,应该是“nginx负载下当程序错误时会导致请求被多次重复处理”,如果这样命名,可能没人会注意了:最后,我懒得再费脑汁了,从人类智慧的角度我把它命…
前言: 在初步构建的nginx+tomcat服务集群时, 发现webserver获取到的客户端ip都是同一个, 皆为作为反向代理服务的nginx所在的机器IP. 这不太符合我们的基本需求, 为将来的数据挖掘和分析带来了麻烦. 不过不用担心, 本文将简单介绍其背后的原因和原理, 以及具体的解决方案, ^_^. 原因分析: webserver在获取客户端ip时, 默认的方式是通过request.getRemoteAddr(), 这种方式本质是从直连的socket中获取到的. 因此客户端直连web s…
一. 为什么需要对Tomcat服务器做负载均衡 Tomcat服务器作为一个Web服务器,其并发数在300-500之间,如果有超过500的并发数便会出现Tomcat不能响应新的请求的情况,严重影响网站的运行.另外,在访问量大的情况下,Tomcat的线程数会不断增加.由于Tomcat自身对内存的占用有控制,当对内存的占用达到最大值时便会出现内存溢出,对网站的访问严重超时等现象,这时便需要重新启动Tomcat以释放占用的内存,这样做便会阻断网站运行. 所以对Tomcat做负载均衡便很有必要.目前可以和…
在上一篇文章中我们已经实现了本地node服务使用https访问了,看上一篇文章 效果可以看如下: 但是如果我们现在使用http来访问的话,访问不了.如下图所示: 因此我现在首先要做的是使用nginx配置下,当用户在浏览器下输入http请求的时候使用nginx重定向到https下即可.因此我们现在需要做一个简单的nginx重定向功能.想要深入了解nginx重定向功能,可以看这篇文章. 因此在我们的nginx中需要加如下重定向配置: server { listen xxx.abc.com; serv…
在性能测试过程中,我们可能会关注很多指标,比如CPU.IO.网络.磁盘等,通过这些指标大致可以判断哪个环节遇到了性能瓶颈,但是当这些指标无法判断出性能瓶颈时,我们可能就需要对一些中间件进行监控,比如Nginx,Tomcat等,当然可能还有很多其他中间件,我们本章主要探讨Nginx+Tomcat的部署及监控,以及使用Jmeter对我们的服务器进行压测,在压测过程中,可能也会遇到Jmeter的一些瓶颈,话不多说,先搞起来. 关于Nginx实现负载均衡 Nginx作为反向代理服务器,实现负载均衡.首先…
Vincent.李   Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https? HTTP全名超文本传输协议,客户端据此获取服务器上的超文本内容.超文本内容则以HTML为主,客户端拿到HTML内容后可根据规范进行解析呈现.因此,HTTP主要负责的是"内容的请求和获取".问题就出在这部分.行监控.劫持.阻挡等行为很容易导致网站泄密,一些关键参数比如登录密码开发者会在客…