美文网首页
Nginx 入门到入门 (Mac)

Nginx 入门到入门 (Mac)

作者: 刘_小_二 | 来源:发表于2020-06-19 10:30 被阅读0次

nginx 安装入门

Nginx 通过 Homebrew 安装

brew install nginx 

Nginx 配置路径信息

/usr/local/Cellar/nginx (安装文件目录)

/usr/local/etc/nginx/nginx.conf (配置文件路径)

/usr/local/var/www (服务器默认路径)

/usr/local/Cellar/nginx/1.12.0 (安装路径)(我安装的是1.12.0,具体参照自己安装的版本)

/private/etc/hosts (系统hosts位置)

启动Nginx服务

brew services start nginx

成功后,使用浏览器打开:

http://localhost:8080

Nginx常用指令

nginx 启动

nginx 

nginx快速停止

nginx -s stop

nginx -s quit

查看版本,以及配置文件地址

nginx -V

查看版本

nginx -v

重新加载配置|重启|停止|退出 nginx

nginx -s reload|reopen|stop|quit

帮助

nginx -h

主要命令

1. 查看nginx信息: brew info nginx
2. 切换至nginx配置文件所在路径:cd /usr/local/etc/nginx
3. 修改nginx配置文件:vim nginx.conf
4. 查看nginx配置是否正确:nginx -t
5. 重启nginx: nginx -s reload

​ ** 详细步骤 **

  1. 通过查看nginx信息,查看配置文件所在路径

    brew info nginx
    
  2. 切换至配置文件所在路径

    cd / usr/local/etc/nginx
    
  3. 修改配置文件,以修改目录为例

    将默认目录修改为指定目录/Users/lanyf/www

    vim nginx.conf
    

    找到修改或者新建

    location / {
      root   html;
      index  index.html index.htm;
    }
    
    location /dist {
      root   /Users/liuzheng/项目/前端(Vue)/wx-manage-master/;
      index  index.html index.htm;
    }
    

    “/”指向地址“root”地址,“/dist”指向“root”路径下的dist文件夹

  1. 查看修改后的配置是否正确

    nginx -t
    
  2. 重启nginx

    nginx -s reload
    
  1. Nginx配置文件结构

    • 1、全局块:配置影响nginx全局的指令。一般有运行nginx服务器的用户组,nginx进程pid存放路径,日志存放路径,配置文件引入,允许生成worker process数等。
    • 2、events块:配置影响nginx服务器或与用户的网络连接。有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接序列化等。
    • 3、http块:可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置。如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等。
    • 4、server块:配置虚拟主机的相关参数,一个http中可以有多个server。
    • 5、location块:配置请求的路由,以及各种页面的处理情况。
    ########### 每个指令必须有分号结束。#################
    #user administrator administrators;  #配置用户或者组,默认为nobody nobody。
    #worker_processes 2;  #允许生成的进程数,默认为1
    #pid /nginx/pid/nginx.pid;   #指定nginx进程运行文件存放地址
    error_log log/error.log debug;  #制定日志路径,级别。这个设置可以放入全局块,http块,server块,级别以此为:debug|info|notice|warn|error|crit|alert|emerg
    events {
        accept_mutex on;   #设置网路连接序列化,防止惊群现象发生,默认为on
        multi_accept on;  #设置一个进程是否同时接受多个网络连接,默认为off
        #use epoll;      #事件驱动模型,select|poll|kqueue|epoll|resig|/dev/poll|eventport
        worker_connections  1024;    #最大连接数,默认为512
    }
    http {
        include       mime.types;   #文件扩展名与文件类型映射表
        default_type  application/octet-stream; #默认文件类型,默认为text/plain
        #access_log off; #取消服务日志    
        log_format myFormat '$remote_addr–$remote_user [$time_local] $request $status $body_bytes_sent $http_referer $http_user_agent $http_x_forwarded_for'; #自定义格式
        access_log log/access.log myFormat;  #combined为日志格式的默认值
        sendfile on;   #允许sendfile方式传输文件,默认为off,可以在http块,server块,location块。
        sendfile_max_chunk 100k;  #每个进程每次调用传输数量不能大于设定的值,默认为0,即不设上限。
        keepalive_timeout 65;  #连接超时时间,默认为75s,可以在http,server,location块。
    
        upstream mysvr {   
          server 127.0.0.1:7878;
          server 192.168.10.121:3333 backup;  #热备
        }
        error_page 404 https://www.baidu.com; #错误页
        server {
            keepalive_requests 120; #单连接请求上限次数。
            listen       4545;   #监听端口
            server_name  127.0.0.1;   #监听地址       
            location  ~*^.+$ {       #请求的url过滤,正则匹配,~为区分大小写,~*为不区分大小写。
               #root path;  #根目录
               #index vv.txt;  #设置默认页
               proxy_pass  http://mysvr;  #请求转向mysvr 定义的服务器列表
               deny 127.0.0.1;  #拒绝的ip
               allow 172.18.5.54; #允许的ip           
            } 
        }
    }
    

相关文章

网友评论

      本文标题:Nginx 入门到入门 (Mac)

      本文链接:https://www.haomeiwen.com/subject/zfcvxktx.html