前言
话说悲催的一天从跨域开始!不知道没有前端工程化的时候,业界是怎么处理跨域的!同源策略?jsonp?还是做代理呢?
可以说本人百分之95以上的时间都是在写工程化的项目!众所周知,工程化项目里可以配置代理解决跨域,我也写过两篇关于配置代理的文章!但是jq如何做代理,还真没有做过!
你可能会说,让后端写下请求头,允许跨域不就好了么!我只想说,我也想,但是沟通不来啊!
没办法!那就自己创造办法吧!
什么事跨域
出于浏览器的同源策略限制。同源策略(Sameoriginpolicy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。同源策略会阻止一个域的javascript脚本和另外一个域的内容进行交互。所谓同源(即指在同一个域)就是两个页面具有相同的协议(protocol),主机(host)和端口号(port)
MacOS安装nginx
- 查询要安装的软件是否存在
1 | brew search nginx |
- 查看要安装的软件的详细信息以及安装在什么目录中
1 | brew info nginx |
可以看到,nginx在本地还未安装(Not installed),nginx的来源(From),Docroot默认为/usr/local/var/www,在/usr/local/etc/nginx/nginx.conf配置文件中默认端口被配置为8080从而使nginx运行时不需要加sudo,nginx将在/usr/local/etc/nginx/servers/目录中加载所有文件,以及我们可以通过最简单的命令 ‘nginx’ 来启动nginx。
- 开始安装:
1 | sudo brew install nginx |
第一次安装忘记加sudo了!导致权限不足!
- 查看是否安装成功以及安装的目录
- 查看nginx配置文件目录(是否如info所说)
1 | open /usr/local/etc/nginx/ |
成功打开nginx目录,也可以看到如info所说servers目录以及nginx.conf的配置文件(后面会用到这个配置文件)。但我们并没有找到nginx被安装到了哪里(因为这个是配置目录嘛)。
- 查看nginx被安装到的目录
1 | open /usr/local/Cellar/nginx |
- 启动nginx
1 | nginx |
- 验资nginx是否启动成功
浏览器访问localhost:8080
- 查看配置文件里的配置内容
1 | cat /usr/local/etc/nginx/nginx.conf |
- 查看网站跟目录
1 | open /usr/local/var/www/ |
配置代理
稍后更新
nginx 常用命令
1 | /** |
nginx在mac上日志的路径
/usr/local/var/log/nginx/access.log
如果能够帮助到你,是小编最大的荣幸
当然 有 不好的地方 请大家帮忙指出 学习永无止境
小编一直认为 人外有人 天外有天 一起学习 共同进步
让我们共同加油吧!!!