Nginx相关命令以及配置文件
时间:2022-07-24
本文章向大家介绍Nginx相关命令以及配置文件,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
Nginx相关命令
Nginx安装目录是:/usr/local/nginx/ 通过/usr/local/nginx/sbin/nginx命令执行以下操作
nginx #启动Nginx
nginx -s stop #强制停止Nginx服务
nginx -s quit #正常停止
nginx -s reload #重新加载Nginx配置文件 然后重启Nginx
nginx -c filename #为 Nginx 指定一个配置文件
nginx -t #验证配置文件是否有语法错误
nginx -V #显示版本信息
nginx -V #显示版本和配置选项信息
配置文件
配置文件的结构
main 配置段
event{} 定义event模型工作特性
http{} 定义http协议相关配置
server{} 虚拟主机配置 http中可以有多个server{}
location{} 根据URL匹配的配置
main配置段
user nobody; #指定Nginx Worker进程运行用户,默认是nobody帐号
user nobody nobody;
pid /var/run/nginx/nginx.pid #指定存储nginx主进程PID的文件路径
daemon {on|off} #是否以守护进程运行进程nginx
worker_processes 2; #指明了nginx要开启的进程数
server_tokens off; #隐藏Nginx版本号
enevt{} 配置参数
enevt{
worker_connections 1024; #每一个worker进程能并发处理的最大连接数
use [epoll | rtsig | select | poll]; #指明使用的事件模型
accept_mutex on; ##设置网路连接序列化,防止惊群现象发生
accept_mutex_delay 500ms; #果一个进程没有互斥锁,它将延迟至少多长时间
multi_accept on; #设置一个进程是否同时接受多个网络连接
}
http{} 配置参数
http{
include mime.types; #文件扩展名与文件类型映射表
default_type application/octet-stream; #默认文件类型,默认为text/plain
keepalive_timeout 65; #连接超时时间,可以在http,server,location块
gzip on; #开启gzip资源压缩
server_tokens off; #隐藏Nginx版本号
client_max_body_size 8m; #上传文件的大小限制,可以在http,server,location块
server {
.........
}
location / {
.........
}
}
server{} 配置参数
server {
listen 80; #监听端口
server_name www.endvv.com #监听域名地址
root /www/web/public; #设置网站目录
access_log /www/logs/acces.log #设置网站日志
error_log /www/logs/error.log #设置网站错误日志
error_page 500 502 503 504 /50x.html; #定义错误提示页面
client_max_body_size 8m; #上传文件的大小限制,可以在http,server,location块
gzip on; #开启gzip资源压缩
}
location{}配置参数
#处理php请求到fpm端口
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
#限制IP访问admin目录
location ^~ /admin/ {
allow 1.1.1.1 #只允许1.1.1.1访问admin目录
deny all; #全部拒绝
}
#设定查看Nginx状态的地址
location /NginxStatus {
stub_status on;
access_log on;
}
语法: location[ = | ~ | ~* | ^~ | @ ] /uri/ {...}
配置块: server location会尝试根据用户请求中的URI来匹配上面的/uri表达式,如果可以匹配,就选择 location{}块中的配置来处理用户请求。
location 表达式类型
~ 正则匹配,区分大小写;
~* 正则匹配,不区分大小写;
^~ 普通字符匹配。使用前缀匹配。如果匹配成功,则不再匹配其他location;
= 普通字符精确匹配。也就是完全匹配;
/ 任何没有匹配成功的,都会匹配这里处理
优先级:
等号类型 (=) 的优先级最高。一旦匹配成功,则不再查找其他匹配项
前缀普通匹配 (^~) 优先级次之。不支持正则表达式。使用前缀匹配,如果有多个 location 匹配的话,则使用表达式最长的那个
正则表达式类型 (~ ~*) 的优先级次之。一旦匹配成功,则不再查找其他匹配项
常规字符串匹配,如果有多个 location 匹配的话,则使用表达式最长的那个
- 重磅!腾讯与科大讯飞技术共创,Google ProtoBuf进入TARS家族!
- 深度学习与R语言
- 在Keras中展示深度学习模式的训练历史记录
- 分析漏洞利用工具包 Archie和Astrum工具包
- 手游热更新方案xLua开源:Unity3D下Lua编程解决方案
- 如何为Keras中的深度学习模型建立Checkpoint
- Dubbo 源码解析 —— Zookeeper 创建节点
- 熔断器 Hystrix 源码解析 —— 断路器 HystrixCircuitBreaker
- 源码级别解读 mybatis 插件
- 在WebKit中并行加载外部脚本译:
- 100行代码,搞定http监控框架
- 【腾讯反病毒实验室】深度剖析APT28最新作品
- [译]clearfix改良及overflow:hidden详解
- 深入解析CSS样式层叠权重值
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- kotlin实现通知栏提醒功能示例代码
- Linux自动删除n天前日志及实例命令
- Flutter学习教程之Route跳转以及数据传递
- PHP实现限制域名访问的实现代码(本地验证)
- 吸引发烧友的视听Linux发行版
- Linux下完全删除用户的两种方法
- flutter实现轮播图效果
- Ubuntu 16.04设置PostgreSQL开机启动的方法
- 使用userdel命令删除Linux用户的教程详解
- Linux系统交换空间介绍
- 小内存服务器上宝塔默认安装的MySQL如何优化配置
- (译)SDL编程入门(15)旋转和翻转
- linux解决ping通但端口不通的问题
- (译)SDL编程入门(13)透明度混合
- 基于centos宝塔面版的安装Discuz! Q方法