nginx之文件配置
nginx配置规则
nginx由受配置文件中指定的指令控制的模块组成
伪指令分为简单伪指令和块伪指令
简单的指令由名称和参数组成,这些名称和参数之间用空格分隔,并以分号(;)结尾
块指令的结构 与 简单指令的结构相同,但是它以分号(而不是分号)结尾,并带有一组用花括号({和})括起来的附加指令
如果块指令可以在括号内包含其他指令,则将其称为上下文(示例:事件,http,服务器和位置)。
放置在任何上下文外部的配置文件中的指令都被视为在主上下文中。 事件和http指令位于主上下文中,服务器位于http中,并且位于服务器中。
井号(#)后面的所有内容属于注释。
示例
简单指令
worker_processes 1;
user nobody;
块指令
events {
worker_connections 1024;
}
提供静态文件
提供静态文件的含义即:设置查找文件的路径,设置索引文件。
示例:
worker_processes 1;
events {
worker_connections 1024;
}
http {
server {
location / {
root /data/www;
}
location /images/ {
root /data;
}
}
}
服务器块讲解如下:
- server标识一个服务器块,server必须包含在http代码块内;
- server里面可以配置监听、前缀等参数;
- location标识匹配的前缀,location匹配有一个原则,最先匹配最长长度;如上例中有两个前缀'/'与'/images/',
- location前缀代码块中root参数标识匹配的路径;
- root参数既可以放在server服务器块中,也可以放在location匹配路径中;
简单代理
示例:设置简单的站点代理
worker_processes ;
events {
worker_connections ;
}
http {
server {
location / {
proxy_pass http://localhost:8080;
}
location /images/ {
root /data;
}
}
server {
listen ;
root /data/up1;
location / {
}
}
}
服务器块(代理)讲解:
- 在第一个 server 下的 location 代码中加入 proxy_pass 参数,用来设定反向代理的URL;
- 默认的server中如果没有listen选项,则表示默认监听80端口,不可以在N个server中含有2个默认的listen;
正则表达式
示例:设置一个简单的正则表达式进行文件匹配
worker_processes ;
events {
worker_connections ;
}
http {
server {
location / {
proxy_pass http://localhost:8080;
}
location ~ \.(gif|jpg|png)$ {
root /data/images;
}
}
server {
listen ;
root /data/up1;
location / {
}
}
}
正则表达式讲解:
- 正则表达式应该以波浪符号(~)开头,波浪符号后面有空格
- 正则表达式小括号内表示要匹配的名称,如果有多个名称,用管道符(|)进行分隔
- 正则表达式后面的目录应该用的是反斜杠(\),而不是正斜杠(/)
设置FastCGI代理
nginx之文件配置的更多相关文章
- Nginx日志文件配置与切割
Nginx日志的指令主要有两条: log_format,设置日志的格式 access_log,指定日志文件的存放路径.格式和缓存大小 两条指令在Nginx配置文件中的位置可以在http{……..}之间 ...
- 虚拟主机ip配置,nginx.conf文件配置及日志文件切割
今天粗略整理了一下虚拟主机配置,nginx.conf文件的配置,及日志文件的切割,记录如下: nginx虚拟主机配置:1.IP地址配置,2.绑定ip地址和虚拟主机详情:1.ip地址的配置:ifconf ...
- nginx路由文件配置
nginx中文文档 Nginx 的请求处理有多个阶段,比如说rewrite.access.content等等,不同的配置字段属于不同的配置阶段,不同阶段的先后执行顺序不一样,例如rewrite在con ...
- nginx.conf文件配置明细详解
#etnx运行的用户和用户组 user nginx nginx; #工作进程数,建议设置为CPU的总核数 worker_processes ; #全局错误日志定义类型,日志等级从低到高依次为: #de ...
- nginx使用手册--nginx.conf文件配置详解
#运行用户 user nobody; #启动进程,通常设置成和cpu的数量相等 worker_processes 1; #全局错误日志及PID文件 #error_log logs/error.log; ...
- nginx编译文件配置(原)
1.在根目录的opt下创建文件夹software并wget一个nginx包进行解压,/opt/software/,解压后需要对软件包文件进行授权 2.cd到nginx目录输入id nginx 未安装插 ...
- nginx字体文件配置
http://www.doucode.com/nginx-support-font/ ====== nginx location语法 基本语法:location [=|~|~*|^~] /uri/ { ...
- 搭建RTSP服务器时nginx的nginx.conf文件配置
worker_processes 1; events { worker_connections 1024;} http { include mime.types; default_type appli ...
- nginx 的基本配置
安装(mac):关于brew 的问题:http://www.cnblogs.com/adouwt/p/8042201.html brew install nginx 启动: brew servic ...
随机推荐
- 第二阶段:2.商业需求分析及BRD:3.产品需求分析
产品需求收集之后就可以进行产品需求分析了. 比如微信功能的逐步完善,偏向于做加法,但有时候也会做减法. Y轴是重要跟不重要 X轴是紧急跟不紧急 然后通过各个需求的分数来确定坐标位置.同时可以根据阶段调 ...
- CodeTypeDeclaration,CodeMemberProperty动态生成代码
由于是CodeDom些列,所以先介绍几个CodeDom表达式: :CodeConditionStatement:判断语句即是if(condition){} else{},看最全的那个构造函数: pub ...
- Redis的高并发、持久化、高可用架构设计
就是如果你用redis缓存技术的话,肯定要考虑如何用redis来加多台机器,保证redis是高并发的,还有就是如何让Redis保证自己不是挂掉以后就直接死掉了,redis高可用 我这里会选用我之前讲解 ...
- vs2015编译zlib静态库步骤
ZLIB静态库的编译 下载ZLIB源码 ZLib官网下载或者GitHub上直接 clone 下来即可 www.zlib.net 截至目前最新版本1.2.1.1本 如下图我选择从官网下载 下载完以后解压 ...
- libcurl库的简单使用
#include <stdio.h> #include <tchar.h> #include <windows.h> #include <process.h& ...
- h5项目中关于ios手机软键盘导致页面变形的完美解决方案
1.项目背景:vue项目,手机加短信验证码登录: 2.问题: 在ios中input吊起软键盘,输入完成后,收起软件盘,页面不会回弹,导致页面下方出现空白,也就是页面变形: 3.最开始的解决方案是,用i ...
- JVM性能优化系列-(1) Java内存区域
1. Java内存区域 1.1 运行时数据区 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域.主要包括:程序计数器.虚拟机栈.本地方法栈.Java堆.方法区(运 ...
- ACM北大暑期课培训第五天
今天讲的扫描线,树状数组,并查集还有前缀树. 扫描线 扫描线的思路:使用一条垂直于X轴的直线,从左到右来扫描这个图形,明显,只有在碰到矩形的左边界或者右边界的时候,这个线段所扫描到的情况才会改变, ...
- c++中减字符0的作用(转)
在刷OJ题的时候遇到要读取“2013-3-1”形式的日期然后计算这个日期是该年的第几天, 显然我们读取的是字符串,但是计算第几天却要整型数来计算,这是这个问题的难点,下面是解决这个问题的代码: int ...
- Fabric1.4:手动启动 first-network 网络(一)
注意:本文所使用的 fabric 版本为 v1.4.3,与其它版本的网络存在差异. 手动启动 first-network 网络系列分为三部分: 手动启动 first-network 网络(一) 手动启 ...