macos nginx安装与配置

安装

1. 安装Homebrew

打开终端,输入

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

这个步骤可能比较漫长,傻瓜式安装就可以

确定mac是否安装了brew,直接输入brew命令,看见返回信息,就说明已经安装了

2.依赖Homebrew安装Nginx

终端输入

brew install nginx

继续需要漫长的等待
可以使用 nginx -v来查看当前安装的版本,也可以验证 Nginx 是否安装成功

3.启动Nginx

终端输入

nginx

输入这个命令后,终端没有任何新的提示。打开浏览器,输入 localhost:8080 如果出现一下界面,就说明安装成功,否者重复上面的步奏

安装成功

到这里,nginx的安装已经基本完成。下面就是配置相关的设置了

配置

常用目录

/usr/local/Cellar/nginx/1.12.2_1 (ngnix安装目录,后面的是当前安装的版本号,根据实际情况可能不同)
/usr/local/var/www (服务器默认路径)
/usr/local/etc/nginx (nginx配置文件所在位置)

常用命令

启动: nginx
退出: nginx -s quit 、nginx -s stop
重新加载: nginx -s reload
如果命令前面加 sudo 表示使用超级管理员的身份启动

配置nginx进入配置文件目录 /usr/local/etc/nginx 打开nginx.conf 文件

可以看到很多配置信息

#user  nobody;
# 在配置文件的顶级main部分,代表worker角色的工作进程的个数
worker_processes  1;
# 错误日志
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
# 进程文件
#pid        logs/nginx.pid;

events {
# 写在events部分。每一个worker进程能并发处理(发起)的最大连接数
    worker_connections  1024;
}

http {
    # 文件扩展名与文件类型映射表
    include       mime.types;
    # 设定默认文件类型
    default_type  application/octet-stream;
     # 为Nginx服务器设置详细的日志格式
    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';
   
    #access log 记录了哪些用户,哪些页面以及用户浏览器、ip和其他的访问信息
    # access log 路径
    #access_log  logs/access.log  main;

    # 开启高效文件传输模式,sendfile指令指定nginx是否调用sendfile函数来输出文件,对于普通应用设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络I/O处理速度,降低系统的负载。注意:如果图片显示不正常把这个改成off。
    sendfile        on;
    #tcp_nopush     on;

    #心跳检测,用于重连等操作
    #keepalive_timeout  0;
    keepalive_timeout  65;
    #gzip  on;

    # 这个是常修改的配置
    # 虚拟主机配置
    server {
        # 监听端口
        listen       8080;
        # 域名设定,可以有多个
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            # 访问当前端口时,默认映射查找的文件目录地址
            # 默认为 /usr/local/var/www
            # 如果自己配置 service 修改root 地址为你的文件所在目录
            root   html; 
            # 定义路径下默认访问的文件名
            index  index.html index.htm;
        }

        # 错误页面配置

        #error_page  404              /404.html;
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        } 
    }


    # 配置信息文件夹,会加载这个文件夹下的所有配置文件
    include servers/*;
}

配置文件默认访问的是8080端口,如果我们想访问其他的端口,我们在 nginx.conf 文件中进行配置即可

1.配置虚拟主机

就是在一台服务器启动多个网站。
如何区分不同的网站:1.域名不同 2.端口不同

1.1 通过端口区分不同虚拟机

/usr/local/etc/nginx/nginx.conf 可以配置多个server,配置多个虚拟主机。

比如我新增的配置如下

server {
        # 监听 81 端口
        listen       81;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            # 访问   /Users/LXX/HBuilderProjects/Html5Test 文件
            root   /Users/LXX/HBuilderProjects/Html5Test;
            # 默认访问  Canvas.html;
            index  Canvas.html;
        }
    }

保存配置文件后,让nginx重新加载配置文件 nginx -s reload
在浏览器中输入http://localhost:81/ 即可访问到指定的文件

访问81端口

1.2 通过域名区分虚拟主机

先掌握几个关键名词

  • 域名:就是网站 如 www.baidu.com
  • Dns服务器:把域名解析为ip地址。保存的就是域名和ip的映射关系。
    一个域名对应一个ip地址,一个ip地址可以被多个域名绑定。

本地测试可以修改hosts文件。
mac电脑的hosts文件位置 /private/etc/hosts 如果要修改hosts 文件,需要先拷贝hosts 文件到其他位置,修改完成后再复制到/private/etc文件夹下
可以配置域名和ip的映射关系,如果hosts文件中配置了域名和ip的对应关系,不需要走dns服务器。

  1. 修改hosts文件

192.168.14.101 www.taibai.com
192.168.14.101 www.baide.com

2.增加虚拟主机

server {
        listen       80;
        server_name  www.taibai.com;
        location / {
            root    /Users/LXX/HBuilderProjects/TestHtml;
            index  CSS.html;
        }
    }
 server {
        listen       80;
        server_name  www.baide.com;
        location / {
            root    /Users/LXX/HBuilderProjects/TestHtml;
            index  index.html index.htm;
        }
    }

2.实现反向代理

3.负载均衡
未完待续

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,711评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,932评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,770评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,799评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,697评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,069评论 1 276
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,535评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,200评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,353评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,290评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,331评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,020评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,610评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,694评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,927评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,330评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,904评论 2 341

推荐阅读更多精彩内容