HTTPS 站点请求 HTTP的API 接口服务报错的问题

问题

线上部署一功能服务时,部署后使用postman调用接口测试正常,在线上系统中调用时出现接口无法请求通过的现象。

经排查发现,在console中出现了**This request has been blocked; the content must be served over https ;**的错误警告。

引发原因

线上系统为https站点,而部署的服务接口使用的是http请求。在线上系统请求服务接口引发了该错误,https站点无法访问http请求的错误;

HTTPS页面里动态的引入HTTP资源,比如引入一个js文件,会被直接block掉.在HTTPS页面里通过AJAX的方式请求HTTP资源,也会被直接block掉。

解决

方案一

将接口服务改造成使用https 的服务

方案二

采用nginx转发。将该服务接口使用nginx已经配置ssl的监听端口去进行转发操作,只需要配置一项反向代理即可实现。

此处使用了线上的443端口进行转发。

bash 复制代码
# HTTPS server
#   
server {
    listen       443 ssl;
    server_name  myhttps;
    root /opte/web;
     ssl_certificate      /opte/nginx/conf/FKWE.crt;
     ssl_certificate_key  /opte/nginx/conf/FKWE.key;
#    ssl_session_cache    shared:SSL:1m;
#    ssl_session_timeout  5m;

    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers  on; 

    location / { 
        root   /opte/web;
        index  index.html index.htm index.php;
    }   
    location ~ \.php$ {
        #root           /opte/web/;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include        fastcgi_params;
    } 

   # 证书登陆 
    location /jit/ {
        proxy_pass http://127.0.0.1:8083/jitsss/;
    }   

}   
相关推荐
辣椒思密达13 小时前
AI出海产品本地化测试:住宅IP在模拟海外用户环境中的实践价值
网络协议·tcp/ip·安全·php·苹果vision pro
花生了什么事o16 小时前
DNS:把域名翻译成 IP 的层级查询机制
网络·网络协议·tcp/ip
2401_8734794018 小时前
金融合规新规下IP查询怎么做?用IP离线库实现数据不出域
网络协议·tcp/ip·金融·ip
微硬创新19 小时前
汽车制造产线协同:耐达讯PROFINETDeviceNet网关在机器人通信中的应用
人工智能·物联网·网络协议·自动化·汽车·制造·信息与通信
米尔的可达鸭19 小时前
深入操作系统 Socket 底层:套接字控制块、FD映射、阻塞IO核心完整实现
arm开发·数据结构·websocket·网络协议·算法·架构·安全架构
Keepingrun21 小时前
http登录和授权
网络·网络协议·http
Lhappy嘻嘻1 天前
网络初识|基础入门:局域网广域网、IP 端口、TCP/IP 五层模型与封装解封装全过程
java·开发语言·网络·笔记·网络协议·tcp/ip
laoli_coding1 天前
如何配置HTTPS站点访问的免费SSL域名证书
网络协议·https·node.js·ssl
糖果店的幽灵2 天前
安全测试从入门到精通_网络基础与HTTPS
网络·https·php
Keepingrun2 天前
HTTP基础
网络·网络协议·http