Mac系统如何使用Nginx

4,269 阅读2分钟
nginx是什么

Nginx是一个高性能的Web和反向代理服务器,它具有很多非常优越的特性。

作为Web服务器:相比Apache,Nginx使用更少的资源,支持更多的并发连接,体现更高的效率,这点使Nginx尤其受到虚拟主机提供商的欢迎,能够支持高达50,000个并发连接数的响应,

作为负载均衡服务器: Nginx既可以在内部直接支持Rails 和 PHP,也可以支持作为HTTP代理服务器对外进行服务,Nginx用C编写,不论是系统资源开销还是CPU使用率都比Perbal要好的多。

作为邮件代理服务器: Nginx同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器)

Nginx安装非常的简单,配置文件 非常简洁(还能够支持perl语法),Bugs非常少的服务器,Nginx启动特别容易,并且几乎可以做到7 * 24不间断运行,即使运行数个月也不需要重启。你还能够在不间断服务的情况下进行软件版本的升级。

自己搭建一个nginx服务器

Mac 系统下搭建一个nginx服务器

  1. 安装brew:命令行输入
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 

这里有提示目录不存在,要创建需要按return键,window下的回车键 安装成功后,

<!-- 更新brew-->
brew update

<!-- 查看安装信息-->
brew -v

<!-- 查看是否安装了nginx-->
brew info nginx 
  1. 安装nginx
brew install nginx
  1. 启动nginx
<!--启动nginx-->
nginx
<!--重启nginx-->
nginx -s reload
<!--停止nginx-->
nginx -s strop
  1. 修改页面信息
open /usr/local/var/www/
  1. 查看nginx的安装目录
open /usr/local/Cellar/nginx/
  1. 查看nginx的配置文件 nginx.conf
/usr/local/etc/nginx/
如何把自己本地前端代码作为nginx服务器访问内容

把本地前端代码拷贝到

open /usr/local/var/www

然后修改nginx.conf配置文件

location / {
            alias  /usr/local/var/www/dist/;
            index  index.html;
            try_files $uri $uri/ /index.html;
        }

然后重启nginx ==nginx -s reload== ,在刷新localhost:8080就可以看到新的代码页面了。

解决跨域的方法:
  1. CORS 需要服务器设置Header: Access-Control-Allow-Origin
  2. JSONP 需要目标服务器配合一个callback函数
  3. window.name + iframe 需要目标服务器响应window.name
  4. window.location.hash + iframe 需要目标服务器作处理
  5. html5 的postMessage + iframe这个也是需要目标服务器或者说目标页面写一个postMessage,主要侧重于前端通讯
使用nginx解决跨域问题

nginx反向代理,可以用于不同目标服务器,不过你需要搭建一个中转nginx服务器,用于转发请求。

在nginx.conf中配置

location /api/{
       proxy_pass http://172.22.31.222:8090/api/;
   }