mac安裝nginx
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