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. 第二周day7

    第二周day7,星期天 所用时间:0 代码量:0 博客量:0 所学知识:提高社交能力,多锻炼.

  2. python之路5:常用模块

    模块简介 time & datetime模块 random os sys shutil json & pickle shelve xml处理 configparser hashlib ...

  3. CMMI审核期间的主要流程

    整个阶段大致2个月左右,正式评估大概一个星期 一 计划准备阶段,包括我们一些资料的准备,做评估计划等 二 执行评估阶段 启动会议 主要主任评估师讲,所有人员参会 会议内容:主任评估师自我介绍 ,项目信 ...

  4. wpf DataGrid cell 背景色修改参考

    <DataTemplate.Triggers> <DataTrigger Binding="{Binding Path=IsSelected, RelativeSource ...

  5. jmeter分布式压测配置

    首选 压力机A,压力机B,压力机C,   压力机A作为控制台    压力机B,压力机C作为分布式的测试机 压力机Aip:172.16.23.69, 压力机Bip:192.168.184.128 压力机 ...

  6. kali 子域名搜集工具学习记录

    # fierce 主要是对子域名进行扫描和收集信息,并且它还可以测试区域传送漏洞. kali 2022.1 apt-get 安装的fierce并没有 -dns参数,需要手动下载,下载后有个fierce ...

  7. k8s_使用k8s部署博客系统svc、secret、configmap(三)

    service service是抽象Pod对外提供服务的地址,将其固化的作用:屏蔽因pod的创删以及扩缩容带来ip变化.service通过自身定义文件的selector的标签配置匹配到需要提供服务的对 ...

  8. ReactJS单页面应用之项目搭建

    初衷 因接手的项目前端采用reactjs+antd,为把控项目中的各个细节,所以想做一些整理,以免后期遗忘. 创建及启动项目 # 全局安装create-react-app # 如果曾经安装过,可先移除 ...

  9. Flutter statecontroller.update(MaterialState.disabled,false)无效

    因为中间会调用 void initStatesController() { if (widget.statesController == null) { internalStatesControlle ...

  10. SQL1224 is returned during the execution of an SQL procedure

    SQL1224 is returned during the execution of an SQL procedure https://www.ibm.com/support/pages/sql12 ...