文章目录

  • Nginx目录结构
  • Nginx编译参数
  • Nginx模块
  • Nginx内置变量
  • Nginx状态码

Nginx目录结构

路径 类型
/etc/nginx
/etc/nginx/nginx.conf
/etc/nginx/conf.d
/etc/nginx/conf.d/default.conf
Nginx主配置文件
/etc/nginx/fastcgi_params
/etc/nginx/scgi_params
/etc/nginx/uwsgi_params
Cgi、Fastcgi、Uwcgi配置文件
/etc/nginx/win-utf
/etc/nginx/koi-utf
/etc/nginx/koi-win
Nginx编码转换映射文件
/etc/nginx/mime.types http协议的Content-Type
/etc/rc.d/init.d/nginx
/etc/rc.d/init.d/nginx-debug
/etc/sysconfig/nginx
/etc/sysconfig/nginx-debug
配置系统守护进程管理器
/etc/logrotate.d/nginx Nginx日志轮询,日志切割
/usr/sbin/nginx
/usr/sbin/nginx-debug
Nginx终端管理命令
/usr/share/doc/nginx-1.12.2
/usr/share/man/man8/nginx.8.gz
Nginx帮助手册目录,文件
/var/cache/nginx Nginx的缓存目录
/var/log/nginx Nginx的日志目录
/etc/nginx/modules
/usr/lib64/nginx
/usr/lib64/nginx/modules
Nginx模块目录
/usr/share/nginx
/usr/share/nginx/html
/usr/share/nginx/html/50x.html
/usr/share/nginx/html/index.html
Nginx默认站点目录

Nginx编译参数

# 查看Nginx编译参数
[root@mysql-slave ~]$ nginx -V
编译选项 作用
–prefix=/etc/nginx 程序安装目录
–sbin-path=/usr/sbin/ngin Nginx启停命令
–modules-path=/usr/lib64/nginx/modules Nginx模块路径
–conf-path=/etc/nginx/nginx.conf Nginx主配置文件路径
–error-log-path=/var/log/nginx/error.log Nginx错误日志路径
–http-log-path=/var/log/nginx/access.log Nginx访问日志路径
–pid-path=/var/run/nginx.pid Nginx的PID路径
–lock-path=/var/run/nginx.lock Nginx锁路径
–http-client-body-temp-path=/var/cache/nginx/client_temp client头部临时缓存文件
–http-proxy-temp-path=/var/cache/nginx/proxy_temp proxy临时缓存文件
–http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp fastcgi临时缓存文件
–http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp uwsgi临时缓存文件
–http-scgi-temp-path=/var/cache/nginx/scgi_temp scgi临时缓存文件
–user=nginx 设定Nginx进程启动用户
–group=nginx 设定Nginx进程启动组(安全)
–with-cc-opt 设置额外的参数将被添加到CFLAGS变量
–with-ld-opt 设置附加的参数,链接系统库

Nginx模块

  • Nginx模块分为Nginx官方模块和Nginx第三方模块
Nginx编译选项 模块作用
ngx_http_core_module 包含一些核心的http参数配置,对应Nginx的配置区块部分
ngx_http_access_module 访问控制模块,用来控制网站用户对Nginx的访问
ngx_http_gzip_module 压缩模块,对Nginx返回的数据压缩,属于性能优化模块
ngx_http_fastcgi_module fastcgi模块,和动态应用相关的模块,如PHP
ngx_http_proxy_module proxy代理模块
ngx_http_upstream_module 负载均衡模块,实现网站负载均衡功能及节点的健康检查
ngx_http_rewrite_module URL地址重写模块
ngx_http_limit_conn_module 限制用户并发连接数及请求数模块
ngx_http_limit_req_module 限制Nginx requestprocessing rate根据定义的key
ngx_http_log_module 访问日志模块,以指定的格式记录Nginx客户访问日志等信息
ngx_http_auth_basic_module Web认证模块,设置Web用户通过账号密码访问Nginx
ngx_http_ssl_module ssl模块,用于加密的http连接,如https

Nginx内置变量

$uri    请求中的当前URI(不带请求参数,参数位于$args)$uri不包含主机名,如”/foo/bar.html
$request_uri    求参数的原始URI,它无法修改,带完整参数
$host   优先级如下:HTTP请求行的主机名>”HOST”请求头字段>符合请求的服务器名
$hostname   主机名
$remote_addr    客户端IP
$remote_port    客户端端口
$remote_user    用于HTTP基础认证服务的用户名,即客户端用户输入的用户名
$request_filename   当前连接请求的文件路径,由root或alias指令与URI请求生成。
$request_method     HTTP请求方法,通常为“GET”或“POST”
$server_addr        服务器端地址,注意:为了避免访问linux系统内核,应将ip地址提前设置在配置文件中
server_name     服务器名,www.cnphp.info
$server_port    服务器端口
$server_protocol    服务器的HTTP版本, 通常为 “HTTP/1.0” 或 “HTTP/1.1”
$scheme         请求使用的Web协议, “http” 或 “https”
$document_root  当前请求的文档根目录或别名

Nginx状态码

301     永久移动。请求资源以被永久移动位置
302     请求的资源现在临时从不同的URL响应请求
305     使用代理。被请求的资源必须通过指定的代理才能被访问
307     临时跳转。被请求的资源在临时从不同的URL响应请求
400     错误请求。
402     需要付款。该状态码是为了将来可能需求而预留的,用于一些数字货币或者微支付
403     禁止访问。服务器已理解请求,但是拒绝执行它
404     找不到对象,请求失败,资源不存在
406     不可接受的,请求的资源的内容特性无法满足请求头中的条件,因而无法生成响应实体

408     请求超时;
409     冲突。由于和被请求的资源的当前状态之间存在冲突,请求无法完成;
410     遗失的。被请求的资源在服务器上已经不再可用,而且没有任何已知的转发地址;
413     响应实体太大。服务器拒绝处理当前请求,请求超过服务器所能处理和允许的最大值。
417     期望失败。在请求头 Expect 中指定的预期内容无法被服务器满足;
418     我是一个茶壶。超文本咖啡罐控制协议,但是并没有被实际的HTTP服务器实现
420     方法失效。
422     不可处理的实体。请求格式正确,但是由于含有语义错误,无法响应;
500     服务器内部错误。服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理;
502     请求后端失败,例如请求Java但是Java没启动就会报502

Nginx目录结构、编译参数、状态码概述相关推荐

  1. HTTP中的跨域请求、HTTP报文结构、状态码

    目录 一.前驱知识学习 (1)请求报文 (2)响应报文 二.HTTP中的跨域请求 1. 什么是跨域请求 2.什么是同源策略 3.为什么要设置这种限制 3.1 攻击实例 3.2 攻击原理 4. 怎样取消 ...

  2. MySQL卸载、下载、安装、配置、目录结构、源码、登录、编码设置、可视化工具、MySQL的常见问题的解决

    目录 MySQL的卸载 MySQL下载.安装.配置 MySQL的4大版本 软件的下载 MySQL8.0 版本的安装 配置MySQL8.0 配置MySQL8.0 环境变量 MySQL5.7 版本的安装 ...

  3. nginx php返回500错误,解决Nginx服务返回500状态码问题

    文章目录 [隐藏] 发现问题 分析并解决问题 最近鼓捣博客服务器,不经意间误操作改了一些目录的用户组及权限,导致博客文件上传功能失败,周末检查了一天依然没有解决问题,在不经意间意识到了问题所在,其实有 ...

  4. 配置nginx/apache的404状态码来申请百度闭站保护

    nginx 配置全站404(百度闭站保护) 在nginx.conf或者虚拟主机的conf配置文件添加下方规则: location / {     return 404; } apache设置全站htt ...

  5. nginx ---- 目录结构

    conf:nginx所有配置文件目录​ CGI(Common Gateway Interface)通用网关[接口],主要解决的问题是从客户端发送一个请求和数据,服务端获取到请求和数据后可以调用调用CG ...

  6. Nginx安装,目录结构与配置文件详解

    1.Nginx简介 Nginx(发音同 engine x)是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行.由俄罗斯的程序设 ...

  7. MySql基础篇---001 数据库概述与MySQL安装篇:概述,表和类对应关系,表关系、数据库卸载,下载,安装,配置,启动,登录,演示,图形化工具,目录结构,常见问题

    第01章_数据库概述 讲师:尚硅谷-宋红康(江湖人称:康师傅) 官网:http://www.atguigu.com 1. 为什么要使用数据库 持久化(persistence):把数据保存到可掉电式存储 ...

  8. Nginx code 常用状态码学习小结

    最近了解下Nginx的Code状态码,在此简单总结下.一个http请求处理流程: 一个普通的http请求处理流程,如上图所示: A -> client端发起请求给nginx B -> ng ...

  9. Live555源码阅读笔记(一):源码介绍文档 及 源码目录结构

    目录 一.Live555介绍 1.Live555项目介绍 2.官网及帮助文档介绍 二.源码目录结构 1.UsageEnvironment 2.BasicUsageEnvironment 3.group ...

最新文章

  1. linux下初步实现Keepalived+Nginx高可用
  2. android高仿微信UI点击头像显示大图片效果
  3. centos下安装mysql_centos下安装mysql服务器的方法
  4. jsp中jquery传值给Java_jsp中利用jquery+ajax在前后台之间传递json格式参数
  5. Server 2012使用Windows PowerShell cmdlet安装角色和角色服务功能
  6. 21_python基础—单例和 __ new __ 方法
  7. 老人机彻底不能用了?联通逐渐关闭2G、3G网络?回应:手机制式不支持
  8. lr 中cookie的解释与用法
  9. 施一公:论文和科技实力是两回事,大家千万要分开
  10. sublime中的emmet插件的使用技巧
  11. 星舆科技北斗高精度定位网启动北斗三号服务
  12. python alpha beta 剪枝_AlphaBeta剪枝算法
  13. doris的tablet副本修复相关情况总结
  14. 表单的js验证框架,只提供提示信息及正则表达式即可自动验证及提示
  15. “做真实的自己”是个坑
  16. LPC23XX CAN波特率的计算
  17. 什么是双因素身份认证?
  18. Win7、Win8、Win10系统USB-Blaster驱动程序无法安装的解决办法
  19. vue 解决重复点击导航路由报错 问题
  20. 2021年上半年软件设计师下午真题及答案解析(三)

热门文章

  1. STM8/STM32 SPI模式的MAX7456代码
  2. .NET爬虫获取拼多多商品价格
  3. 单片机---1.仿真实现跑马灯(从左往右,在从右往左)
  4. windows系统下Redis下载安装与配置(内附蓝奏云下载地址)
  5. FNL资料的变量说明
  6. 安全狗“老用户推荐新用户”有奖活动进行中 最高IPhone 4S手机
  7. 电脑搜索不出网络共享文件夹内容
  8. 新中产人群生活态度及网络理财安全行为研究报告
  9. deepin更新linux内核,修改deepin启动内核
  10. 计算距离春节还有多长时间