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 ...
随机推荐
- Java中的Redis 哨兵高可用性
让我们探索Redis Sentinel,看看如何在Java上运行它,一起来看看,最近get了很多新知识,分享给大家参考学习.需要详细的java架构思维导图路线也可以评论获取! 什么是Redis哨兵? ...
- 【python测试开发栈】帮你总结python random模块高频使用方法
随机数据在平时写python脚本时会经常被用到,比如随机生成0和1来控制逻辑.或者从列表中随机选择一个元素(其实抽奖程序也类似,就是从公司所有人中随机选择中奖用户)等等.这篇文章,就帮大家整理在pyt ...
- 敏捷开发流程之Scrum:3个角色、5个会议、12原则
本文主要从Scrum的定义和目的.敏捷宣言.Scrum中的人员角色.Scrum开发流程.敏捷的12原则等几方面帮助大家理解Scrum敏捷开发的全过程. 一.Scrum的定义和目的 Scrum是一个用于 ...
- Antd将Table导出为Excel
Antd将Table导出为Excel 在最近的项目中,需要把表格中的数据导出给财务进行统计,网上很多一键导出的按钮都没用.经过东拼西凑,最终搞定了导出,自己封装了组件. import { File } ...
- 微信小程序之双重循环(包含左滑删除,以及数据各项处理)
<view wx:for="{{hommer}}" wx:for-item="item" wx:for-index="index" w ...
- Netty 的基本简单实例【服务端-客户端通信】
Netty是建立在NIO基础之上,Netty在NIO之上又提供了更高层次的抽象. 在Netty里面,Accept连接可以使用单独的线程池去处理,读写操作又是另外的线程池来处理. Accept连接和读写 ...
- 【Think In Java笔记】第1章 对象导论
1. 对象导论 OOP 面向对象编程 C.Basic等语言所在的抽象仍要求在解决问题时基于计算机的解决,而不是基于所解决问题的结构来考虑. 要建立起问题空间的元素和解空间的对象之间一一映射的关系 万物 ...
- Vmware下Ubuntu 14.04静态IP地址的设置方法
一.环境 宿主机 Win 8.1 虚拟机工具 VMware 10.0 虚拟主机系统 Ubuntu 14.04 二.说明 这里需要注意的是:VMware对于VMnet8采用如下规则(192.168. ...
- 在 Vue 中使用 Typescript
前言 恕我直言,用 Typescript 写 Vue 真的很难受,Vue 对 ts 的支持一般,如非万不得已还是别在 Vue 里边用吧,不过听说 Vue3 会增强对 ts 的支持,正式登场之前还是期待 ...
- kmp-最小子串回文次数
poj 2406 Given two strings a and b we define a*b to be their concatenation. For example, if a = &quo ...