https跳转到http的过程在IE6中存在BUG(Bea-090475)
前段时间做OA系统的https的安全登录功能(以前登录是采用的一般的http方式,后因为安全性考虑需要改成https的方式)在本机测试完全通过。 可是近期同事发现在测试环境下用IE6访问会出现不能访问的问题。我测试了以下,确实存在这样的问题。这个问题仅出现在IE6上,在火狐或IE7\8上都 没问题。这就很纳闷了。为什么会出现这样的情况呢?
WEB服务器采用的是weblogic10.3。
http:9001
https:9002
使用IE6访问后控制台会出现如下错误:
<Warning> <Security> <BEA-090475> <Plaintext data for protocol HTTP was received from peer 10.32.1.90 - 10.32.1.90 instead of an SSL handshake.>
|
Description |
Plaintext data was received over an SSL connection. |
|
Cause |
A peer is trying to send plaintext data directly instead of using SSL. |
|
Action |
Check the port and protocol settings on the peer that is trying to connect. It may be pointing to the SSL port by mistake or it may be specifying a plaintext protocol by mistake. |
WEBLOGIC的官网说:
问题发生的原因大概是明文数据企图用SSL来通信。
这就奇怪了。我的https在后台校验登录成功后就强制转换到了http方式。并且这一切都在IE7\8下通过了测试。
跟踪代码发现,在Login.jsp页面已HTTPS的方式提交了数据后,后台过滤器进行数据的校验,校验通过后采用sendRedirect方法跳转到http方式(sendRedirect(http://reyo.cn:9001/test.jsp)),问题就发生在访问validateright.jsp页面的时候。
在validateright.jsp通过request.getRequestURL()获取出来的数据为http://reyo.cn:9002/test.jsp。 我明明在过滤器里面重定向的是9001的端口,在页面获取到的确是9002.和用request.getLocalPort()获取来的9001也不同。 但如果用IE7/8以及火狐来访问的话就不会有这样的问题。同样的访问流程,不同的浏览器向服务器提交的请求端口不同。太奇怪了。
无解。无解。这肯定和后台的代码没多大关系,初步猜测是IE6的一个BUG。尚未证实。
后来把服务器的http和https的端口都改为了默认端口80,443.这样不管IE6\7\8,以及火狐都不存在这样的问题。看来是用默认端口不会遇到这样的BUG问题,也暂时作为临时解决方案吧。
https跳转到http的过程在IE6中存在BUG(Bea-090475)的更多相关文章
- 【虚拟机-网关】如何在使用应用程序网关和 Nginx 的环境下实现强制 HTTPS 跳转
背景介绍 大家在使用 Nginx 部署网站时,实现 HTTP 到 HTTPS 的强制跳转是非常容易的事情,一般可以使用rewrite 命令或者使用返回自定义 301 页面的方法对 HTTP 请求进行 ...
- Nginx http -> https 跳转后 POST 丢失
在 nginx.conf 配置文件中添加如下配置进行 http -> https 跳转 server { listen ; server_name example.org; https://$s ...
- spring+hibernate 配置多个数据源过程 以及 spring中数据源的配置方式
spring+hibernate 配置多个数据源过程 以及 spring中数据源的配置方式[部分内容转载] 2018年03月27日 18:58:41 守望dfdfdf 阅读数:62更多 个人分类: 工 ...
- mysql-存储过程案例-存储过程中创建表和修改表数据
-- 本存储过程有特殊执行循环数量的要求,是对security_market_history表进行修正 -- 判断存储过程是否存在 drop PROCEDURE if exists proc_secu ...
- 【转】C 编译器优化过程中的 Bug
C 编译器优化过程中的 Bug 一个朋友向我指出一个最近他们发现的 GCC 编译器优化过程(加上 -O3 选项)里的 bug,导致他们的产品出现非常诡异的行为.这使我想起以前见过的一个 GCC bug ...
- 【2016美团】浏览器和服务器在基于https进行请求链接到数据传输过程中,用到了如下哪些技术
A.非对称加密技术 B.对称加密技术 C.散列(哈希)算法 D.数字证书 答案:ABCD HTTPS在传输数据之前需要客户端(浏览器)与服务端(网站)之间进行一次握手,在握手过程中将确立双方加密传输数 ...
- Unity3D_(游戏)跳一跳超简单制作过程
跳一跳 工程文件界面 游戏界面 脚本 using DG.Tweening; using System.Collections; using System.Collections.Generic; us ...
- https页面证书验证、加密过程简介
1.服务器向CA机构获取证书(假设这个证书伪造不了),当浏览器首次请求服务器的时候,服务器返回证书给浏览器.(证书包含:公钥+申请者与颁发者的相关信息+签名) 2.浏览器得到证书后,开始验证证书的相关 ...
- https跳http
listen 443 ssl;rewrite ^ http://$http_host$request_uri? permanent;
随机推荐
- CCF CSP 201503-1 图像旋转
CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址 CCF CSP 201503-1 图像旋转 问题描述 旋转是图像处理的基本操作,在这个问题中,你需要将一个图像逆 ...
- scrapy进阶-编写中间件和扩展
中间件: 主要讨论的是下载中间件,明确一下顺序: download_middlewares --> server.url ---> spider_middleware 我主 ...
- Elasticsearch环境准备(一)
一.ELKStack简介 中文指南:https://www.gitbook.com/book/chenryn/elk-stack-guide-cn/details ELK Stack包含:Elasti ...
- redis配置新端口
为redis分配一个8888端口,操作步骤如下:1.$REDIS_HOME/redis.conf重新复制一份,重命名为redis8888.conf.2.打开redis8888.conf配置文件,找到p ...
- CIDR的IP地址的表示与划分方法
早期的ip地址划分: 最初设计互联网络时,为了便于寻址以及层次化构造网络,每个IP地址包括两个标识码(ID),即网络ID和主机ID.同一个物理网络上的所有主机都使用同一个网络ID,网络上的一个主机(包 ...
- 安卓手机获取IP地址
public class IpGetUtil { public static String getIPAddress(Context context) { NetworkInfo info = ((C ...
- python之路【第十二篇】: MYSQL
一. 概述 Mysql是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用 ...
- 模板优化 运用 function 及 外部模板
我们都知道模板是泛型的,但是,它一旦被实例化就会产生一个实例化的副本. 好了,大家应该能够猜到,低效模板和高效模板的差异了 一般的低效模板: 1.泛型实参表达形式多样导致的低效模板 2.多文件引用同一 ...
- Python csv模块的使用
1.csv简介 CSV (Comma Separated Values),即逗号分隔值(也称字符分隔值,因为分隔符可以不是逗号),是一种常用的文本 格式,用以存储表格数据,包括数字或者字符.很多程序在 ...
- Redis 连接命令
1.AUTH password 验证密码是否正确 2.ECHO message 打印字符串 3.PING 查看服务是否运行 4.QUIT 关闭当前连接 5.SELECT index 切换到指定的数据库