nginx SSl redirect问题
来源:互联网 发布:淘宝全球买手那些人 编辑:程序博客网 时间:2024/05/21 03:18
配置状态:nginx SSL + http tomcat2、修改nginx配置【验证后发现,可以不用配置】
现象:当应用中存在redirect或者使用以下语句生成的URL路径时scheme和端口号都不正确的问题
String basePath = request.getScheme() + "://"+ request.getServerName() + ":"+ request.getServerPort()+ request.getRequestURI();
例如拼接URL得到的链接为http://txs.tydevice.com:80/xxxxxx
redirect的连接为http://txs.tydevice.com/xxxx
解决:
处理scheme不正确的解决
一、tomcat server.xml在host节点增加
1
<Valve className="org.apache.catalina.valves.RemoteIpValve" remoteIpHeader="x-forwarded-for" remoteIpProxiesHeader="x-forwarded-by" protocolHeader="x-forwarded-proto" />
二、跳转链接配置,有两种方法
1、修改tomcat,在connector增加proxyPort=443,redirectPort=443
1
<Connector port="8089" protocol="HTTP/1.1"
2
connectionTimeout="20000" URIEncoding="UTF-8"
3
redirectPort="443" proxyPort="443" /> -->
这种方法仅适用所有访问tomcat应用均为443端口的应用,否则会导致所有请求该端口的应用,redirect均会跳转到443端口上,类似下图
开启proxy_redirect跳转至对应端口
1
location ^~ /client {
2
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
3
proxy_set_header Host $http_host;
4
proxy_set_header X-Forwarded-Proto https;
5
proxy_connect_timeout 240;
6
proxy_send_timeout 240;
7
proxy_read_timeout 240;
8
# note, there is not SSL here! plain HTTP is used
9
proxy_pass http://salesdev;
10
proxy_redirect http://txs.tydevice.com:80/ https://txs.tydevice.com/;
11
#access_log logs/access-api.log app_log;
12
}
如果要解决http redirect端口号不正确的问题,修改nginx配置,
其中的proxy_set_header Host $host:$server_port; 这一行非常关键。
1
location / {
2
add_header Access-Control-Allow-Origin *;
3
add_header Access-Control-Allow-Headers X-Requested-With;
4
add_header Access-Control-Allow-Methods GET,POST,OPTIONS;
5
root /opt/tydevice;
6
index index;
7
proxy_pass http://salesdev;
8
#proxy_redirect http://txs.tydevice.com/ http://txs.tydevice.com:9081 ;
9
#proxy_set_header Host $host;
10
proxy_set_header Host $host:$server_port;
11
proxy_set_header X-Real-IP $remote_addr;
12
proxy_set_header REMOTE-HOST $remote_addr;
13
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
14
client_max_body_size 50m;
15
client_body_buffer_size 10m;
16
proxy_connect_timeout 30;
17
proxy_send_timeout 30;
18
proxy_read_timeout 60;
19
proxy_buffer_size 256k;
20
proxy_buffers 4 256k;
21
proxy_busy_buffers_size 256k;
22
proxy_temp_file_write_size 256k;
23
proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;
24
proxy_max_temp_file_size 128m;
25
}
阅读全文
0 0
- nginx SSl redirect问题
- nginx下redirect问题
- Passenger,nginx and SSL(http redirect to https)
- 解决nginx https代理tomcat redirect问题
- SpringBoot+Nginx+Https下redirect问题
- 解决nginx https代理tomcat redirect问题
- Nginx SSL+Tomcat问题总结
- nginx ssl tomcat no ssl https http问题
- nginx+tomcat的ssl认证问题汇总
- Redirect to ssl in codeigniter
- nginx ssl
- Nginx ssl
- nginx启用ssl【nginx】
- SSL 证书购买以及Nginx配置相关问题
- nginx tomcat SSL下的request获取信息问题
- Response.Redirect的问题
- SpringMVC redirect乱码问题
- SpringMVC redirect乱码问题
- xshell-常用指令汇总 linux 常用指令
- JS_获取当前时间(2017年06月27日)
- 微信小程序实现滑动的自定义页码
- 简历突出这三点,HR抢着要!
- 分类聚类区别及聚类概述
- nginx SSl redirect问题
- 01_Qt基本控件及三大布局
- MINA基础
- 【Python】命令行参数使用
- OPENSIPS安装配置过程记录
- nginx ssl配置
- The "android" command is deprecated
- 5.3-全栈Java笔记:面向对象特征(二)封装、多态
- openssl升级及nginx重新编译
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
圆明园明日免费开放
切尔诺贝利核爆点对游客开放
墙角数枝梅 凌寒独自开
开方
开方计算器
开方怎么算
正负开方术
开方公式
开方计算
145252开方
手动开方
怎么开方
开方函数
如何开方
怎样开方
289开方
计算器开方
开方运算
625开方
java开方
手算开方
开方符号
256开方
5开方
2开方
被开方数
开方是什么
开方的函数
6开方
开方计算机
java 开方
计算机开方
开方的符号
matlab开方
根号开方
324开方
10开方
复数开方
开方器
6.25开方
12.5开方