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配置403错误提示(apache documentroot指向htcdoc之外提示403错误的解决方法)
- 停止mysql服务命令(windows下实现定时重启Apache与MySQL方法)
- mac版本php环境搭建(在Mac OS X中配置Apache+PHP+MySQL运行环境的详细步骤)
- apache安装与配置windows(Apache 安装和使用文档)
- xampp在什么操作系统中不能使用(xampp apache启动失效问题的解决方法)
- 如何认识服务器(关于Nginx、Apache、Tomcat三个WEB服务器的区别和认知)
- apache和yii域名配置(yii框架数据库关联查询操作示例)
- apache中配置虚拟主机的作用(apache基于端口创建虚拟主机的示例)
- apache实时框架(教你快速开启Apache SkyWalking的自监控)
- net微服务架构部署方式(基于Apache的支持.NET2.0的Web服务器搭建)
- apache和php如何配置(Apache2与PHP5 for WinXP简单配置技巧)
- apachemodule定义(使ApacheBench支持multi-url的方法)
- jvm运动数据区总结(JVM上高性能数据格式库包Apache Arrow入门和架构详解Gkatziouras)
- php框架laravel使用(laravel5环境隐藏index.php后缀apache的方法)
- 开源asp.net(apache下支持asp.net的实现方法)
- nginx和apache(为什么 Nginx 比 Apache 更牛逼)
- 入秋后的第二场苹果发布会来了 全新M1系列芯片登场(入秋后的第二场苹果发布会来了)
- 苹果正式发布自研芯片M1 5nm 32核心 彻底放弃Intel(苹果正式发布自研芯片M1)
- 苹果自研芯片跑分对比 A16芯片排名靠后,M1系列霸榜(苹果自研芯片跑分对比)
- X86处理器的梦魇 苹果M1自研芯片到底有多强(苹果M1自研芯片到底有多强)
- 泰剧《爱欲之神》Boom kitkong和Great合体杂志(泰剧爱欲之神Boomkitkong和Great合体杂志)
- 素人恋爱综艺火药味十足 男生为赢得芳心集体扯头花,真是出好戏(素人恋爱综艺火药味十足)
热门推荐
- python电脑自动发送邮件(python学习--使用QQ邮箱发送邮件代码实例)
- dedecms迁移data验证码不显示(dedecms织梦上传图片302Error错误的解决方法)
- 微信公众号怎么获取用户openid(微信公众平台开发教程①获取用户Openid及个人信息图文详解)
- wampserver安装后怎样设置(怎么修改wampserver默认的浏览器)
- 前端技术图解(前端水印的简单实现代码示例)
- 搭建好的ftp服务器在哪里(如何在自己的电脑上搭建FTP服务器?)
- linq中group by
- windows 10中如何安装numpy(windows下numpy下载与安装图文教程)
- html5中怎么做圆形框架(HTML5 层的叠加的实现)
- 使用docker对集群进行管理(使用docker搭建kong集群操作)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9