apache访问提示404(Apache跨域资源访问报错问题解决方案)
apache访问提示404
Apache跨域资源访问报错问题解决方案很多时候,大中型网站为了静态资源分布式部署,加快访问速度,减轻主站压力,会把静态资源(例如字体文件、图片等)放在独立服务器或者CDN上,并且使用独立的资源域名(例如res.test.com)
但是在实际部署中,会发现浏览器无法载入这些不同域名的资源,firefox控制台会报错:
<span role="presentation" class="objectBox objectBox-errorMessage "><span class="errorMessage ">已阻止跨源请求:同源策略禁止读取位于 http://xxxxx 的远程资源。(原因:CORS 头缺少 'Access-Control-Allow-Origin')。</span></span>
已阻止跨源请求:同源策略禁止读取位于 http://xxxxx 的远程资源。(原因:CORS 请求失败)。
这是因为现代浏览器将其定义为跨域资源而不允许加载
理解跨域首先必须要了解同源策略。同源策略是浏览器上为安全性考虑实施的非常重要的安全策略。
何谓同源:
URL由协议、域名、端口和路径组成,如果两个URL的协议、域名和端口相同,则表示他们同源。
同源策略:
浏览器的同源策略,限制了来自不同源的"document"或脚本,对当前"document"读取或设置某些属性。 (白帽子讲web安全[1])
从一个域上加载的脚本不允许访问另外一个域的文档属性。
那么关键是如何解决呢,其实很简单,只要在静态资源服务器上,增加一个头信息:
Access-Control-Allow-Origin *
本文就apache进行操作,nginx大同小异
首先编辑httpd.conf
找到这行
#LoadModule headers_module modules/mod_headers.so
把#注释符去掉
LoadModule headers_module modules/mod_headers.so
目的是开启apache头信息自定义模块
然后在独立资源域名的虚拟主机添加一行
Header set Access-Control-Allow-Origin *
意思是对这个域名的资源进行访问时,添加一个头信息
重启apache
再访问,OK!
|
NameVirtualHost 10.0.0.2:80 <VirtualHost 10.0.0.2:80> DocumentRoot /var/www/host .example.com ServerName host.example.com JkMount /webapp/ * jkworker Header set Access-Control-Allow-Origin "*" RewriteEngine on RewriteRule ^ /otherhost http: //otherhost .example.com /webapp [R,L] < /VirtualHost > |
And here's an example of the Apache config for the second:
|
NameVirtualHost 10.0.1.2:80 <VirtualHost 10.0.1.2:80> DocumentRoot /var/www/otherhost .example.com ServerName otherhost.example.com JkMount /webapp/ * jkworker Header set Access-Control-Allow-Origin "*" < /VirtualHost > |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持开心学习网。
原文链接:https://www.cnblogs.com/wangluochong/p/6001651.html
- apache服务器配置https(Apache Rewrite url重定向功能的简单配置)
- apache服务器对php的支持原理(php apache开启跨域模式过程详解)
- nginx和apache(为什么 Nginx 比 Apache 更牛逼)
- nginx和apache服务器配置(Apache、Nginx 服务配置服务器端包含SSI)
- ssm框架中的页面怎么写(apache SHTML网页SSI使用详解)
- java温度转换自动识别(Apache Calcite 实现方言转换的代码)
- 宝塔web服务器如何安装(宝塔面板开启Nginx/Apache防火墙四层防御的方法)
- phpstudy8.0使用教程视频(phpstudy v8.1 Apache伪静态配置图文教程)
- mysql5.7.19下载及安装教程(Apache2.2.16+PHP5.3.3+MySQL5.1.49的配置方法)
- idea中tomcat快速部署(IDEA编辑器整合Apache Tomcat的详细教程)
- 修改mysql安装服务名称(Apache为mysql以及自己的项目设置虚拟路径)
- 如何认识服务器(关于Nginx、Apache、Tomcat三个WEB服务器的区别和认知)
- nginx反向代理及原理(传说中的反向代理,Nginx+Apache软件配置Web服务器)
- jvm运动数据区总结(JVM上高性能数据格式库包Apache Arrow入门和架构详解Gkatziouras)
- phpstudy中apache到期如何修改(phpStudy找不到Apache“服务名” 解决方法)
- ssl服务器搭建的步骤(windows apache环境下部署SSL证书让网站支持https的配置方法)
- 吉林神秘传染链跨省 传染源尚未找到,舒兰 封城(吉林神秘传染链跨省)
- 吉林舒兰 封城 聚集性疫情传播链已延至沈阳,有一个细节让人忧心(吉林舒兰封城)
- 1天密接者猛增77人,患者轨迹透露危险信号 吉林市全面封闭管理(1天密接者猛增77人)
- 吉林舒兰 封城 15人确诊 276人隔离,出现跨省传播(吉林舒兰封城)
- 四月新番CP人气榜公布,《剃须》两度上榜,沙优不是女朋友(四月新番CP人气榜公布)
- 2019年外媒秋季新番动画角色CP排行榜,桐人和爱丽丝落榜(2019年外媒秋季新番动画角色CP排行榜)
热门推荐
- css3如何添加图形(CSS3地图动态实例代码圆圈向外扩散)
- Mysql官方性能测试工具mysqlslap的使用简介(Mysql官方性能测试工具mysqlslap的使用简介)
- python中split使用方法(python lxml中etree的简单应用)
- mysql中mergeinto的用法(MySQL中exists、in及any的基本用法)
- python矩阵怎么生成(python实现矩阵打印)
- SQL Server作业活动监视器
- html5+css样式代码(详解HTML5中CSS外观属性)
- 微信小程序做计算器(微信小程序实现计算器小功能)
- sqlserver附加数据库时出错(SQL Server数据库附加失败的解决办法)
- css样式词大全(超全面CSS样式整理)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9