nginx 的组成部分:
- 二进制可执行文件:由各模块源码编译出的一个文件,提供功能;
- nginx.conf 配置文件:控制 nginx 的行为;
- access.log 访问日志:记录每一条 http 请求 / 响应信息;
- error.log 错误日志:定位问题。
nginx配置文件(nginx.conf)说明:
- http配置指令块:http、upstream、server、location
## 访问对应的路径重定向到 /file-path 下的静态文件,且访问地址不包含file-path路径: http.server.location.alias file-path/; ## 在浏览器中显示服务器下文件资源结构: http.server.location.autoindex on; ## 限制访问速度(1k/s): http.server.location.set $limit_rate 1k; ## 访问日志: http.log_format ${log_type} ${something} http.server.access_log filepath ${log_type} ## 配置反向代理: ## 上游服务器配置: http.upstream local { server 127.0.0.1:8080; ... } ## 服务配置 http.server.server_name ${domainName}; http.server.listen ${port}; http.server.location / { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for proxy_pass http://local; }; ## 配置缓存: ## 配置参数: http.proxy_cache_path /data/nginx/cache levels=1:2 keys_zone=my_cache:10m; ## 使用: http.server.location / { proxy_cache my_cache; proxy_cache_key $host$uri$is_args$args; proxy_cache_valid 200 302 10m; proxy_cache_valid 404 1m; }
nginx命令行:
- 格式:nginx -s reload
- 使用指定的配置文件:-c filepath
- 指定配置指令:-g
- 指定运行目录:-p
- 发送信号:-s [stop|quit|reload|reopen]
- 测试配置文件是否有语法错误:-t -T
- 打印 nginx 的版本信息、编译信息等: -v -V
升级nginx后热部署:
-》ps -ef | grep nginx // 找到主进程的id
-》kill -USR2 主进程的id
-》ps -ef | grep nginx // 看到新增的进程
-》kill -WINCH 主进程的id
图形化监控访问日志:
安装 GoAccess。
Nginx 进程信号管理: