mac 安装 nginx 流程

首先mac安装brew包管理工具:

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
(若出现错误:error: could not lock config file .git/config: Permission denied)
解决办法:sudo chgrp -R admin /usr/local
sudo chmod -R g+w /usr/local 回车即可。

再次输入 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

回车即可

第一:正式安装nginx

brew install nginx

第二:查看nginx安装目录

open /usr/local/etc/nginx/

(成功打开nginx目录,可以看到servers目录以及nginx.conf的配置文件(后面会用到这个配置文件)。

第三:open /usr/local/Cellar/nginx //这个是nginx被安装到的根目录

第四:启动nginx

启动Nginx服务器 :命令行输入sudo nginx。

打开浏览器,输入loacalhost:80,会看到nginx的欢迎页,如图:

第五:配置nginx

编辑器打开nginx根目录找到nginx.conf,代码找到server开始配置:

listen:8888 监听的端口号(注意不要与前端项目启动的端口号一样)

serve_name:127.0.0.1 localhost 10.20.139.146 监听的我们自己的ip地址,可以写多个。

location / {

proxy_pass http://localhost:8000 //监听的前端启动的项目地址

} (当在浏览器输入localhost:8888时,会自动映射到 http://localhost:8000 地址)

location ^~ /api/ {

rewrite ^/api/(.*)$/$1 break;

proxy_pass https://api.test.com/; //后端接口地址

proxy_set_header Host api.devland.cn;

} //配置前端调用接口跨域问题:监听所有以 /api 开头的接口

配置完后,需要输入命令:sudo nginx -s reload 重新加载配置文件

可能出现错误:nginx [error] invalid PID number " " in "/user/local/var/run/nginx/nginx.pid"

解决办法:sudo nginx -c /user/local/etc/nginx/nginx.conf //重新指定nginx配置文件

前端调用接口如:axios.post('/api/goods/details')

至此,前端调用后端接口跨域问题就解决了。

nginx 常用命令:

帮助命令:nginx -h

启动Nginx服务器 :sudo nginx

查看进程: ps aux | grep nginx

配置文件路径:sudo nginx -c /usr/local/nginx/conf/nginx.conf

检查配置文件:sudo nginx -t

指定启动配置文件:sudo nginx -c /usr/local/nginx/conf/nginx.conf

暴力停止服务:sudo nginx -s stop

优雅停止服务:sudo nginx -s quit

重新加载配置文件:sudo nginx -s reload

mac 安装 nginx 流程,并解决前端跨域问题的更多相关文章

  1. 项目部署问题:xftp无法连接服务器、Nginx403 Forbidden解决、nginx反向代理解决前端跨域问题

    一.xftp无法连接服务器 在xftp中配置正确的ip,用户名和密码后,居然无法连接 解决方案:将协议里面的FTP换成SFTP,注意换成SFTP后端口就默认换成22,要还是原来的21就还是连不上的哈 ...

  2. nginx反向代理-解决前端跨域问题

    1.定义 跨域是指a页面想获取b页面资源,如果a.b页面的协议.域名.端口.子域名不同,所进行的访问行动都是跨域的,而浏览器为了安全问题一般都限制了跨域访问,也就是不允许跨域请求资源.注意:跨域限制访 ...

  3. 使用nginx反向代理解决前端跨域问题

    1. 首先去Nginx官网下载一个最新版本的Nginx,下载地址:http://nginx.org/en/download.html.我这里下载的版本是:nginx/Windows-1.12.0.下载 ...

  4. 用nginx的反向代理机制解决前端跨域问题在nginx上部署web静态页面

    用nginx的反向代理机制解决前端跨域问题在nginx上部署web静态页面 1.什么是跨域以及产生原因 跨域是指a页面想获取b页面资源,如果a.b页面的协议.域名.端口.子域名不同,或是a页面为ip地 ...

  5. JAVA解决前端跨域问题。

    什么是跨域? 通俗来说,跨域按照我自己的想法来理解,是不同的域名之间的访问,就是跨域.不同浏览器,在对js文件进行解析是不同的,浏览器会默认阻止,所以 现在我来说下用java代码解决前端跨域问题. 用 ...

  6. 完美解决前端跨域之 easyXDM 的使用和解析

    前端跨域问题在大型网站中是比较常见的问题.本文详细介绍了利用 easyXDM 解决前端跨域的原理细节和使用细节,具体使用时可以在文中代码实例的基础上扩展完成. 0.背景 因个别网络运营商存在 HTTP ...

  7. 如何用Nginx解决前端跨域问题?

    前言 在开发静态页面时,类似Vue的应用,我们常会调用一些接口,这些接口极可能是跨域,然后浏览器就会报cross-origin问题不给调. 最简单的解决方法,就是把浏览器设为忽略安全问题,设置--di ...

  8. 用nginx的反向代理机制解决前端跨域问题

    什么是跨域以及产生原因 跨域是指a页面想获取b页面资源,如果a.b页面的协议.域名.端口.子域名不同,或是a页面为ip地址,b页面为域名地址,所进行的访问行动都是跨域的,而浏览器为了安全问题一般都限制 ...

  9. 【Nginx】在Windows下使用Nginx解决前端跨域问题

    提出问题:因为一些历史原因,后台代码不能动.请求别人的接口拿数据显示在前端,怎么办呢? 分析问题:通过ajax请求. 解决问题:因为浏览器的同源策略,所以需要解决跨域问题.(同源策略:请求的url地址 ...

  10. 利用nginx做反向代理解决前端跨域问题

    最近朋友再群里提了一个问题,他们公司给他提供了一个获取数据的接口,在浏览器访问这个接口能获取到json数据,但是放在项目里使用ajax就产生了跨域问题,一般这个需要提供接口的后台方面需要做跨域处理,但 ...

随机推荐

  1. shell - scriptfifo

    shell1: mkfifo xxfifo script -f xxfifo cmd cmd exit   -----主动退出 shell2: cat xxfifo 可以看到shell1的所有操作. ...

  2. Vue案例——todolist

    最近在学习vue,实现todolist案例,实现效果如下: 该案例分为四个部分:header为输入框,body为列表,item是列表中的条目,footer为最下方的统计. 实现步骤: ①创建项目 vu ...

  3. 备份还原ESXi 中的虚拟机快照

    了解 ESXi 中的虚拟机快照 (1015180) Click here to view full document Symptoms 免责声明:本文是 Understanding VM snapsh ...

  4. 使用虚拟环境-Python虚拟环境的安装和配置-virtualenv

    打开windows命令终端(cmd)安装虚拟环境 virtualenv(如果你执行了上面查看python版本的语句,那么要先使用exit()方法先退出) pip3 install virtualenv ...

  5. ASPICE的实践

    ASPICE这种规范文件如果严格遵守,那么投入产出比是比较小的. 但是其中的思想是很好的,比如对需求的管理.讲究双向可追溯. 但是也是有很多需要慎重的,比如对component和unit的区分太过明显 ...

  6. E: 无法获得锁 /var/lib/apt/lists/lock - open (11: 资源暂时不可用)E: 无法对目录 /var/lib/apt/lists/ 加锁

    问题: 解决:https://www.cnblogs.com/long5683/p/11058066.html 使用方法二 可以

  7. drf从入门到飞升仙界 03

    APIView执行流程 基于APIView+JsonResponse编写接口 # APIView是drf提供给使用者的一个类,在使用drf写视图类,继承都是这个类及其子类 # APIView继承了Dj ...

  8. oracle 数据库备份脚本(数据泵1-全库)

    #!/bin/sh# ################################################################### Powered by Ironfo# ## ...

  9. 为什么JAVA中(byte)128结果为-128;(byte)-129结果为127

    为什么JAVA中(byte)128结果为-128;(byte)-129结果为127 在JAVA中默认的整型为int型,int型占4个字节,为32位.byte占一个字节为8位. JAVA中的二进制都是采 ...

  10. 2022-3-21内部群每日三题-清辉PMP

    1.Sprint的速度低于预期,敏捷团队成员应该怎么做? A.限制团队成员和客户之间的沟通,以防止不必要的焦虑. B.管理沟通,以重置相应团队成员和干系人的期望. C.管理几名团队成员和客户之间的沟通 ...