首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

https跨域到http问题解决

https跨域到http问题解决

整体结构
用户--https-->Nginx--http-->Tomcat
页面中包含了iframe,iframe的src也是Https的,但是当frame里面的内容表单提交后tomcat服务器处理成功想要重定向却无法正常重定向,Chrome报错如下
Mixed Content: The page at 'https://...../#' was loaded over HTTPS, but requested an insecure form action 'http://.../**/**'. This request has been blocked; the content must be served over HTTPS.
[url=][/url]
proxy.confproxy_redirect          off;proxy_set_header        Host $host;proxy_set_header        X-Real-IP $remote_addr;  #获取真实ipclient_max_body_size    10m;client_body_buffer_size 128k;proxy_connect_timeout   90;proxy_send_timeout      90;proxy_read_timeout      90;proxy_buffer_size       4k;proxy_buffers           4 32k;proxy_busy_buffers_size 64k;proxy_temp_file_write_size 64k;defalutserver {listen 80 default_server;server_name localhost;return 301 https://$server_name:6663$request_uri;}server {listen 6663;server_name localhost;ssl     on;ssl_certificate      /home/dream/Https/ssl/server/server.crt;ssl_certificate_key  /home/dream/Https/ssl/server/server.pem;ssl_client_certificate /home/dream/Https/ssl/server/root.crt; ssl_session_timeout  5m;ssl_verify_client on;  #开户客户端证书验证ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;ssl_prefer_server_ciphers on;location / {proxy_pass http://127.0.0.1:8080/;}}[url=][/url]

解决方式在nginx配置文件添加:
proxy_pass http://127.0.0.1:8080/;proxy_redirect ~^http://([^:]+)(:\d+)?(.*)$  https://$1$3;
返回列表