`
summersun_ym
  • 浏览: 15066 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

ssl应用中访问非ssl内容是弹出安全提示框的问题

阅读更多
我们都知道,如果我们的应用是基于ssl的,那么就需要通过https访问我们的应用,这个时候如果在你的请求中需要发送一个外部的http请求,那么浏览器将会弹出一个安全提示窗口,如图所示:



浏览的网站出现这个提示,表明这些都是HTTPS加密的网站,当网页包括经加密传送的HTTPS内容和未经加密传送的HTTP内容时,IE8就会询问用户是否允许接受未经加密的内容,警告的不安全内容可能是图片、js、css等资源。一开始习惯性的选择了“是”,但是发现IE浏览器的左下角那里马上会提示“网页上有错误”,只能选择“否”才可以正常使用这些网站的功能,比如右键菜单,虽然使用没有问题了,但是每次都弹出这个“安全警告”,而且还要点击确认,实在很烦。在如今这样一个用户体验至上的年代,这样的提示窗口无疑会严重影响到我们的用户体验,那么我们应该如何让这个提示框自动消失呢?一般来说有以下三种方法:

方案一
既然这是有浏览器自动弹出来的,那么我们当然可以从浏览器本身入手,不过这种方法需要在客户端进行设置,要让我们的用户去做这样的设置,显然也不现实,所以后面会有更好的方法。
1、 打开IE8选择“工具”→“Internet选项”



2、 接着,选择“安全”页面,点击“Internet”(这项需要根据你访问的连接是属于外网或内网进行相应的设置),再选择下面的“自定义级别”按钮



3、 将“显示混合内容”项缺省的“提示”改成“启用”,问题即可解决





方案二
从应用程序入手,既然这个问题是由于在https中访问http导致的,那么我们就将我们的访问全部修改为https的,这样自然就不会有提示了,也就是说在我们的应用程序中保证所有的请求都是https的,不过这种方法在实际应用中不能很好的执行,原因很简单,我们的应用很可能需要访问一些外部的连接,比如js、css、图片等资源,这些外部资源很多时候不受我们控制,我们无法改变它们的访问方式,这个时候我们就得借助我们的方法三来完成了。

方案三
使用web服务器的uri重写功能,在我们的应用中通过一个相对路径访问外部资源,在web服务器中将该相对路径进行重写为资源的绝对路径,使用代理获取资源内容,然后将内容返回客户端,这样对于浏览器来说看到的是一个相对路径,自然不会进行安全提示,我们就绕过了浏览器的安全提示了。
对于apache来说,我们需要增加如下一些配置:
#加载rewrite模块
LoadModule rewrite_module /opt/taobao/install/httpd/modules/mod_rewrite.so
#加载代理模块
LoadModule proxy_module /opt/taobao/install/httpd/modules/mod_proxy.so
LoadModule proxy_http_module /opt/taobao/install/httpd/modules/mod_proxy_http.so

#uri重写
RewriteEngine on
RewriteRule ^/(.*)/idata/tbcdn/cn/js/(.*)$ http://a.tbcdn.cn/??$1 [L,R,NE]
对于我们的应用,原来访问的资源路径为:
http://a.tbcdn.cn/??yui/3.0.0/build/yui/yui-min.js,yui/3.0.0/build/oop/oop-min.js
修改后的资源访问路径为:
tbcdn/cn/js/yui/3.0.0/build/yui/yui-min.
  • 大小: 21.4 KB
  • 大小: 32.8 KB
  • 大小: 51.9 KB
  • 大小: 41.4 KB
分享到:
评论

相关推荐

    mongodb-win32-x86_64-2008plus-ssl-4.0.4-signed.msi

    "ssl"在文件名中意味着此版本的MongoDB集成了SSL(Secure Sockets Layer)支持,这是一种安全协议,用于加密数据传输,确保在MongoDB服务器和客户端之间进行的安全通信,防止数据在传输过程中被窃取或篡改。...

    Wininet_SSL___Certificate_src.zip_CInternetSession_SSLCon.h_ssl_

    在本文中,我们将深入探讨如何使用`CInternetSession`类在VC++中实现SSL(Secure Sockets Layer)方式的登录。SSL是一种网络安全协议,用于在客户端和服务器之间建立安全的通信,确保数据传输的隐私和完整性。`...

    JBOSS 7 基于HTTPS双向SSL认证

    弹出“导入成功”提示框。 附录:JDK 中 keytool 常用命令 -genkey 在用户主目录中创建一个默认文件".keystore",还会产生一个 mykey 的别名,mykey 中包含用户的公钥、私钥和证书 -alias 产生别名 -key 产生密钥 ...

    mongodb-win32-x86_64-2008plus-ssl-4.0.10-signed.zip

    7. SSL连接:压缩包中的“ssl”标签表明MongoDB 4.0.10支持SSL加密,确保数据在传输过程中的安全,防止数据被窃取或篡改。 8. 高性能:MongoDB使用内存映射技术,将数据存储在内存中,从而实现快速读写操作,提升了...

    网络安全课程设计(CA证书服务器的建立与使用)

    - 版本历史:SSL 1.0未公开发布,SSL 2.0有已知的安全缺陷,SSL 3.0是最稳定的版本之一,但在2014年出现了POODLE漏洞后逐渐被TLS取代。 - TLS版本:TLS 1.0(1999年)、TLS 1.1(2006年)、TLS 1.2(2008年)、TLS...

    [西安]长弓 DataSnap发布的程序需要用到libeay32.dll、ssleay32.dll的问题解决办法2017-05-26.docx

    在使用Delphi的DataSnap框架进行分布式应用开发时,可能会遇到一个常见的问题:当部署的应用程序缺少`libeay32.dll`或`ssleay32.dll`这两个DLL文件时,会出现“Loading SSL module failed. One or more mapped ...

    超级有影响力霸气的Java面试题大全文档

     forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。...

    跟我一起学Visual.Studio.2005(11):ASP.NET.Web.应用程序安全(1)

    在本节中,我们将深入探讨ASP.NET Web应用程序的安全性,特别是在使用Visual Studio 2005开发环境下的安全实践。ASP.NET是微软推出的用于构建Web应用程序的框架,它提供了丰富的功能来确保应用的安全性,包括身份...

    java client访问https server(客户端代码、服务器端配置)

    8. 错误处理:在实际应用中,可能出现各种SSL/TLS相关的异常,如证书未信任、证书过期等,需要适当的错误处理机制来处理这些问题,例如捕获`SSLHandshakeException`并给出明确的提示。 总之,Java客户端访问HTTPS...

    IPanel应用开发指南

    这部分介绍了iPanel提供的扩展功能模块,包括状态提示、MP3播放、弹出窗口、视频控制、音量控制、焦点风格设置、按键捕获、透明效果、全局变量控制、Frame控制、历史记录控制以及与底层的交互和调试接口。...

    ios-手动支付与自动支付弹出界面.zip

    在iOS应用中,弹出视图是一种临时显示的内容区域,它可以是模态对话框、提示框或者下拉菜单等形式,用于提供额外的信息或执行特定操作。在支付场景中,弹出视图经常用于展示支付选项、输入支付详情或确认交易信息。...

    浏览器总是提示“安全证书有问题”怎么办.docx

    当我们在使用浏览器访问某些网站时,可能会遇到浏览器弹出警告框,提示“安全证书有问题”。这通常意味着该网站的安全证书无效或者过期,浏览器无法验证其安全性。安全证书是确保网站数据传输加密的重要手段之一,它...

    iPanel_2.0 应用开发指南

    - 弹出窗口:支持创建模态窗口、对话框等功能。 - 视频控制:提供视频播放的控制功能。 - 音量控制:支持在线音量调节。 - 焦点风格设置:允许自定义焦点样式。 - 按键捕获:允许捕获遥控器的按键事件。 - 透明效果...

    AFNetworking发送post请求出现999错误1

    在AFNetworking中,发送POST请求可能会出现999错误,这可能是由于服务器端的问题或客户端的配置问题所致。在这种情况下,需要检查服务器端的配置和客户端的网络连接状态。 2. HTTPS(Hypertext Transfer Protocol ...

    xshell远程连接linux

    此外,Xshell提供了审计日志功能,可以帮助监控和记录所有连接活动,以便在出现问题时进行排查。 总结起来,Xshell作为一款强大的远程连接工具,为Linux系统管理带来了极大的便利。结合Xmanager_Enterpris,可以...

    Xposed框架以及JustTrusetMe安装包

    例如,描述中提到的“可绕过sslping验证”可能对应于一个名为“JustTrustMe”的模块,它能帮助用户绕过SSL证书检查,这对于开发者调试网络请求或者测试应用时非常有用。但请注意,这可能导致安全问题,因为它可能使...

    框分类2020最新安装程序

    隐藏手机号后查看有时弹出手机认证页面问题 手机版找回密码时,用户名过长,用户列表显示错位问题。 后台添加商家每次都要设置一次默认模板问题 上传图片数量设置为0时,后台不能上传图片问题 企业建站导航有时出现...

    CAS(Central Authentication Service、中央认证服务)

    CAS的出现解决了多应用系统下用户管理与认证的复杂性问题,提高了用户体验并增强了安全性。 CAS的核心概念包括: 1. **认证服务器**:这是CAS系统的核心部分,负责处理用户的身份验证请求。当用户尝试访问受保护的...

    IIS6.0 IIS,互联网信息服务

    这是一个触发UAC的操作,如果Windows Vista没有关闭UAC,则会弹出提示信息,确认并继续; 如果仅需要IIS 7.0支持静态内容,可直接选中“Internet信息服务”,如果希望 Web 服务器支持动态内容,则需展开“万维网...

    IOS应用源码之photo批量上传ftp.zip

    为了提供良好的用户体验,需要捕获并处理FTP上传过程中可能出现的错误,如网络中断、文件过大等问题。同时,实时更新并展示上传进度也很重要,可以使用`NSProgress`来跟踪上传进度。 6. **权限管理**: iOS应用...

Global site tag (gtag.js) - Google Analytics