homebrew 安装 Nginx
推荐 Mac 电脑上内置 homebrew 工具安装。
安装 Nginx:
brew install nginx
卸载 Nginx:
brew uninstall nginx
Homebrew
Homebrew是一款Mac OS平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。简单的一条指令,就可以实现包管理,而不用你关心各种依赖和文件路径的情况,十分方便快捷。
援引官方的一句话:又提示缺少套件啦?别担心,Homebrew 随时守候。Homebrew —— OS X 不可或缺的套件管理器。
二、Homebrew安装
- 要求
Intel CPU
OS X 10.9 or higher
Xcode命令行工具
$ xcode-select --install
支持shell (sh或者bash)
- 安装和卸载
安装
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
卸载
$ cd brew --prefix
$ rm -rf Cellar
$ brew prune
$ rm git ls-files
$ rm -r Library/Homebrew Library/Aliases Library/Formula Library/Contributions
$ rm -rf .git
$ rm -rf ~/Library/Caches/Homebrew
三、Homebrew基本使用
安装任意包
$ brew install
示例:安装node
$ brew install node
卸载任意包
$ brew uninstall
示例:卸载git
$ brew uninstall git
查询可用包
$ brew search
查看已安装包列表
$ brew list
查看任意包信息
$ brew info
更新Homebrew
$ brew update
查看Homebrew版本
$ brew -v
Homebrew帮助信息
$ brew -h
四、注意
在Mac OS X 10.11系统以后,/usr/local/等系统目录下的文件读写是需要系统root权限的,以往的Homebrew安装如果没有指定安装路径,会默认安装在这些需要系统root用户读写权限的目录下,导致有些指令需要添加sudo前缀来执行,比如升级Homebrew需要:
$ sudo brew update
如果你不想每次都使用sudo指令,你有两种方法可以选择:
对/usr/local 目录下的文件读写进行root用户授权
$ sudo chown -R $USER /usr/local
示例:
$ sudo chown -R gaojun /usr/local
(推荐)安装Homebrew时对安装路径进行指定,直接安装在不需要系统root用户授权就可以自由读写的目录下
启动 Nginx
启动
启动 Nginx:
sudo nginx 或 sudo brew services start nginx
停止 Nginx:
sudo nginx -s stop 或 sudo brew services stop nginx
热重启 Nginx:
sudo nginx -s reload
强制停止 Nginx:
sudo pkill -9 nginx
修改配置
经常要用到的几个文件路径:
/usr/local/etc/nginx/nginx.conf (nginx配置文件路径)
/usr/local/var/www (nginx服务器默认的根目录)
/usr/local/Cellar/nginx/1.17.9 (nginx的安装路径)
/usr/local/var/log/nginx/error.log (nginx默认的日志路径)
nginx 默认配置文件简介:
# 首尾配置暂时忽略
server {
# 当nginx接到请求后,会匹配其配置中的service模块
# 匹配方法就是将请求携带的host和port去跟配置中的server_name和listen相匹配
listen 8080;
server_name localhost; # 定义当前虚拟主机(站点)匹配请求的主机名
location / {
root html; # Nginx默认值
# 设定Nginx服务器返回的文档名
index index.html index.htm; # 先找根目录下的index.html,如果没有再找index.htm
}
}
# 首尾配置暂时忽略
server{ } 其实是包含在 http{ } 内部的。每一个 server{ } 是一个虚拟主机(站点)。
上面代码块的意思是:当一个请求叫做localhost:8080请求nginx服务器时,该请求就会被匹配进该代码块的 server{ } 中执行。
当然 nginx 的配置非常多,用的时候可以根据文档进行配置。
英文文档:http://nginx.org/en/docs/
中文文档:https://blog.redis.com.cn/doc/
https://www.php.cn/nginx/424631.html
https://www.php.cn/nginx/
https://juejin.cn/post/6844904129987526663
https://www.cnblogs.com/bhlsheji/p/4026296.html
https://www.cnblogs.com/Torres-tao/p/16260843.html