前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Nginx相关命令以及配置文件

Nginx相关命令以及配置文件

作者头像
剧终
发布2020-09-11 11:21:37
8150
发布2020-09-11 11:21:37
举报
文章被收录于专栏:Linux学习日志Linux学习日志

Nginx相关命令

Nginx安装目录是:/usr/local/nginx/ 通过/usr/local/nginx/sbin/nginx命令执行以下操作

代码语言:javascript
复制
nginx   #启动Nginx
nginx -s stop   #强制停止Nginx服务
nginx -s quit   #正常停止
nginx -s reload   #重新加载Nginx配置文件 然后重启Nginx
nginx -c filename #为 Nginx 指定一个配置文件
nginx -t   #验证配置文件是否有语法错误
nginx -V   #显示版本信息
nginx -V   #显示版本和配置选项信息

配置文件

代码语言:javascript
复制
配置文件的结构
main 配置段
event{}  定义event模型工作特性
http{}  定义http协议相关配置
server{}  虚拟主机配置 http中可以有多个server{}
location{}  根据URL匹配的配置

main配置段

代码语言:javascript
复制
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{} 配置参数

代码语言:javascript
复制
enevt{
worker_connections 1024;  #每一个worker进程能并发处理的最大连接数
use [epoll | rtsig | select | poll];  #指明使用的事件模型
accept_mutex on;  ##设置网路连接序列化,防止惊群现象发生
accept_mutex_delay 500ms; #果一个进程没有互斥锁,它将延迟至少多长时间
multi_accept on;   #设置一个进程是否同时接受多个网络连接
}

http{} 配置参数

代码语言:javascript
复制
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{} 配置参数

代码语言:javascript
复制
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{}配置参数

代码语言:javascript
复制
#处理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;
}
代码语言:javascript
复制
语法: location[ = | ~ | ~* | ^~ | @ ] /uri/ {...}
配置块: server location会尝试根据用户请求中的URI来匹配上面的/uri表达式,如果可以匹配,就选择 location{}块中的配置来处理用户请求。

location 表达式类型
~  正则匹配,区分大小写;
~* 正则匹配,不区分大小写;
^~ 普通字符匹配。使用前缀匹配。如果匹配成功,则不再匹配其他location; 
=  普通字符精确匹配。也就是完全匹配;
/  任何没有匹配成功的,都会匹配这里处理

优先级:
等号类型 (=) 的优先级最高。一旦匹配成功,则不再查找其他匹配项
前缀普通匹配 (^~) 优先级次之。不支持正则表达式。使用前缀匹配,如果有多个 location 匹配的话,则使用表达式最长的那个
正则表达式类型 (~ ~*) 的优先级次之。一旦匹配成功,则不再查找其他匹配项
常规字符串匹配,如果有多个 location 匹配的话,则使用表达式最长的那个
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Nginx相关命令
  • 配置文件
  • main配置段
  • enevt{} 配置参数
  • http{} 配置参数
  • server{} 配置参数
  • location{}配置参数
相关产品与服务
轻量应用服务器
轻量应用服务器(TencentCloud Lighthouse)是新一代开箱即用、面向轻量应用场景的云服务器产品,助力中小企业和开发者便捷高效的在云端构建网站、Web应用、小程序/小游戏、游戏服、电商应用、云盘/图床和开发测试环境,相比普通云服务器更加简单易用且更贴近应用,以套餐形式整体售卖云资源并提供高带宽流量包,将热门开源软件打包实现一键构建应用,提供极简上云体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档