Nginx - Additional Modules, Website Access and Logging
The following set of modules allows you to configure how visitors access your website and the way your server logs requests.
Index
The Index module provides a simple directive named index, which lets you define the page that Nginx will serve by default if no filename is specified in the client request (in other words, it defines the website index page). You may specify multiple filenames; the first file to be found will be served. If none of the specified files are found, Nginx will either attempt to generate an automatic index of the files, if the autoindex directive is enabled, or return a 403 Forbidden error page.
Optionally, you may insert an absolute filename (such as /page.html) but only as the last argument of the directive.
Syntax: index file1 [file2…] [absolute_file];
Default value: index.html
Eaxmple:
index index.php index.html index.htm;
index index.php index2.php /catchall.php;
This directive is valid in the following contexts: http, server, location.
Autoindex
If Nginx cannot provide an index page for the requested directory, the default behavior is to return a 403 Forbidden HTTP error page. With the following set of directives, you enable an automatic listing of the files that are present in the requested directory:

Three columns of information appear for each file—the filename, the file date and time, and the file size in bytes.
autoindex
Context: http, server, location
Enables or disables automatic directory listing for directories missing an index page.
Syntax: on or off
autoindex_exact_size
Context: http, server, location
If set to on, this directive ensures that the listing displays file sizes in bytes. Otherwise, another unit is employed, such as KB, MB, or GB.
Syntax: on or off
Default value: on
autoindex_localtime
Context: http, server, location
By default, this directive is set to off, so the date and time of files in the listing appears as GMT time. Set it to on to make use of the local server time.
Syntax: on or off
Default value: off
Random Index
This module enables a simple directive, random_index, which can be used within a location block in order for Nginx to return an index page selected randomly among the files of the specified directory.
This module is not included in the default Nginx build.
Syntax: on or off
Log
This module controls the behavior of Nginx regarding access logs. It is a key module for system administrators as it allows analyzing the runtime behavior of web applications. It is composed of three essential directives:
access_log
Context: http, server, location
This parameter defines the access log file path, the format of entries in the access log by selecting a template name, or disables access logging.
Syntax: access_log path [format [buffer=size]] | off;
Some remarks concerning the directive syntax:
- Use access_log off to disable access logging at the current level
- The format argument corresponds to a template declared with the log_format directive, described below
- If the format argument is not specified, the default format is employed (combined)
- You may use variables in the file path
log_format
Context: http, server, location
Defines a template to be utilized by the access_log directive, describing the contents that should be included in an entry of
the access log.
Syntax: log_format template_name format_string;
The default template is called combined and matches the following example:
log_format combined '$remote_addr - $remote_user [$time_local] '"$request" $status $body_bytes_sent '"$http_referer" "$http_user_agent"';
# Other example
log_format simple '$remote_addr $request';
open_log_file_cache
Context: http, server, location
Configures the cache for log file descriptors. Please refer to the open_file_cache directive of the HTTP Core Module for additional information.
Syntax: open_log_file_cache max=N [inactive=time] [min_uses=N] [valid=time] | off;
The arguments are similar to the open_file_cache and other related directives; the difference being that this applies to access log files only.
The Log module also enables several new variables, though they are only accessible when writing log entries:
- $connection: The connection number
- $pipe: The variable is set to "p" if the request was pipelined
- $time_local: Local time (at the time of writing the log entry)
- $msec: Local time (at the time of writing the log entry) to the microsecond
- $request_time: Total length of the request processing, in milliseconds
- $status: Response status code
- $bytes_sent: Total number of bytes sent to the client
- $body_bytes_sent: Number of bytes sent to the client for the response body
- $apache_bytes_sent: Similar to $body_bytes, which corresponds to the %B parameter of Apache's mod_log_config
- $request_length: Length of the request body
Nginx - Additional Modules, Website Access and Logging的更多相关文章
- Nginx - Additional Modules, About Your Visitors
The following set of modules provides extra functionality that will help you find out more informati ...
- Nginx - Additional Modules, Limits and Restrictions
The following modules allow you to regulate access to the documents of your websites — require users ...
- Nginx - Additional Modules, Content and Encoding
The following set of modules provides functionalities having an effect on the contents served to the ...
- Nginx - Additional Modules, SSL and Security
Nginx provides secure HTTP functionalities through the SSL module but also offers an extra module ca ...
- 通过Nginx,Tomcat访问日志(access log)记录请求耗时
一.Nginx通过$upstream_response_time $request_time统计请求和后台服务响应时间 nginx.conf使用配置方式: log_format main '$remo ...
- Thinkphp框架网站 nginx环境 访问页面access denied
今日不熟一个tiinkphp框架网站的时候,由于服务器环境是centos6.5+nginx1.8,已经运行php商城项目很正常, 本以为一切比较简单,直接新建了项目文件夹,xftp上传了程序,并配置n ...
- linux+nginx+phpfpm 访问出现Access denied错误解决方案
linux上安装nginx,php-fpm后访问页面一直出现Access denied错误. 网上搜原因大概如下图: 我试了第一个方案,然后就好了.
- Table of Contents - Nginx
Downloading and Installing Nginx Nginx for Windows Basic Nginx Configuration Configuration File Syn ...
- nginx---reference
nginx (pronounced "engine x") is a free open source web server written by Igor Sysoev, a R ...
随机推荐
- HttpMessageConverter用法
HttpMessageConverter接口定义 * Strategy interface that specifies a converter that can convert from and t ...
- Ioc容器Autofac系列(3)-- 三种注册组件的方式
简单来说,所谓注册组件,就是注册类并映射为接口,然后根据接口获取对应类,Autofac将被注册的类称为组件. 虽然可像上篇提到的一次性注册程序集中所有类,但AutoFac使用最多的还是单个注册.这种注 ...
- mongodb 、nosql、 redis、 memcached 是什么?
mongodb 是一个基于文档的数据库,所有数据是从磁盘上进行读写的.MongoDB善长的是对无模式JSON数据的查询.而Redis是一个基于内存的键值数据库,它由C语言实现的,与Nginx/ Nod ...
- mbstowcs_s实现wchar_t转成char
把char*转换为wchar_t* 用stdlib.h中的mbstowcs_s函数,可以通过下面的例子了解其用法: char*CStr = "string to convert"; ...
- Plus One @LeetCode
import java.util.Arrays; /** * Plus One * * Given a number represented as an array of digits, plus o ...
- 元数据标签Embed
关于Embed外部资源的使用方法总结 Flex软件中经常需要使用一些外部的资源,如图片.声音.SWF或字体,虽然你也可以在软件运行的时候引入和载入,但是也可能经常需要直接将这些资源编译(Compile ...
- juggle
/** @inheritDoc */ public function advanceTime(time:Number):void { if (time == 0 || (mCurrentTime == ...
- MySQL锁系列2 表锁
http://www.cnblogs.com/xpchild/p/3789068.html 上一篇介绍了MySQL源码中保护内存结构或变量的锁,这里开始介绍下MySQL事务中的表锁. 注1: 在表 ...
- uint8_t / uint16_t / uint32_t /uint64_t 是什么数据类型(转)
在nesc的代码中,你会看到很多你不认识的数据类型,比如uint8_t等.咋一看, 好像是个新的数据类型,不过C语言(nesc是C的扩展)里面好像没有这种数据类型啊!怎么又是u又是_t的?很多人有这样 ...
- CentOS 安装中文输入法
转载:http://blog.sina.com.cn/s/blog_9f1c093101019h03.html centos 6.3用yum安装中文输入法 1.需要root权限,所以要用root登录 ...