现象如题tomcat设置了
<Valve className="org.apache.catalina.valves.RemoteIpValve" remoteIpHeader="X-Forwarded-For" protocolHeader="X-Forwarded-Proto" protocolHeaderHttpsValue="https"/>nginx设置了
server {
listen 18443 ssl;
server_name localhost;
ssl on;
# access_log logs/httpshost.access.log main;
ssl_certificate my.crt;
ssl_certificate_key my.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH:HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://myserver;
proxy_set_header Host $host;
proxy_redirect http:// $scheme://;
proxy_set_header X-Forwarded-Proto "https";
}
}这样设置了还是不行
tomcat6、nginx1.8、jdk1.7坐等大神解惑,分不够可以另开贴加
<Valve className="org.apache.catalina.valves.RemoteIpValve" remoteIpHeader="X-Forwarded-For" protocolHeader="X-Forwarded-Proto" protocolHeaderHttpsValue="https"/>nginx设置了
server {
listen 18443 ssl;
server_name localhost;
ssl on;
# access_log logs/httpshost.access.log main;
ssl_certificate my.crt;
ssl_certificate_key my.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH:HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://myserver;
proxy_set_header Host $host;
proxy_redirect http:// $scheme://;
proxy_set_header X-Forwarded-Proto "https";
}
}这样设置了还是不行
tomcat6、nginx1.8、jdk1.7坐等大神解惑,分不够可以另开贴加
解决方案 »
- 求助!aix如何建立只读的ftp用户,只能对某个路径的文件读。其它任何路径和文件禁止任何权限
- 刚学习LINUX网络编程,关于一个UDP的问题想请教一下大家
- 如果有三个线程R,W1,W2,共享一个缓冲器B
- kali第二系统
- nohup运行shell脚本kill命令后代码不执行
- /usr/bin/ld: ../src/.libs/libhdf5.so: undefined reference to `OMPI_C_MPI_NULL_CO
- 关于linux系统磁盘不足问题
- 关于USB摄像头V4L获取图像的问题,问题比较长也很急,求帮助!
- nginx运行php文件显示File not found.
- wait等待循环体内的计算全部结束
- netfilter钩子函数打印WARNING: at net/core/dev.c:2253 skb_warn_bad_offload+0xcd/0xda()
- 请问各位高手ubuntu 系统上使用wine 安装的source insght 运行起来很慢、很卡、延时严重,该怎么办?
配置nginx,在响应中添加一个响应头:
add_header Content-Security-Policy upgrade-insecure-requests;
配置文件如图:
此方法解决了我的问题,不知道对你有没有用。
附文一篇:
http://www.cnblogs.com/hustskyking/archive/2015/08/21/upgrade-insecure-requests.html
if ( $scheme = http ){
return 301 https://$server_name$request_uri;
}
location / {
proxy_pass http://myserver;
proxy_set_header Host $host;
proxy_redirect http:// $scheme://;
proxy_set_header X-Forwarded-Proto "https";
}nginx代理转发到tomcat时2,使用是http转发的,那么tomcat获取到的就是客户端连接自然就是http的吧?!
感觉就是 客户端=====(HTTPS)====》nginx=====(HTTP)=====》Tomcat。
想让java也获取https,是否应该是ngnix==》Tomcat时就用HTTPS呢?
这里的myserver是不是ipv6的地址或者localhost指向的ipv6的地址,改成v4试试看呢
proxy_pass http://myserver;
proxy_set_header Host $host;
proxy_redirect http:// $scheme://;
proxy_set_header X-Forwarded-Proto "https";
}
楼上一群神经病吗? proxy_pass http://myserver; 改成 https不就行了吗? proxy_set_header X-Forwarded-Proto "https"; 这个删掉 proxy_set_header Host $host; 加上端口
这里设置的是 http,需要换成 https,而且 tomcat 的证书需要配置正确。