当前位置:首页 » 密码管理 » nginx关闭访问日志

nginx关闭访问日志

发布时间: 2023-04-03 06:20:34

㈠ nginx日志的配置及切割

nginx的log_format可以自主选择参数用于指示服务器的活动状态,默认的是:

假设将nginx服务器作为web服务器,位于负载均衡设备巧唤,nginx反向代理之后,不能获取到客户端的真实ip地址了。

原因是进过反向代理后,由于在客户端和web服务器之间增加了中间层,因此web服务器无法直接拿到客户端的ip。通过$remote_addr变量拿到的将是反向代理服务器的ip地址,但是,反向代理服务器在转发请求的http头信息中,可以增加X-Forwarded-For信息,用以记录原有的客户端ip地址和原来客户端请求的服务器地址

语法:access_log path [format [buffer=size [flush=time]]];

配置段:

gzip压缩等扰歼级

buffer设置内存缓存区大小

flush保存在缓存去中的最长时间

不记录日志:access_log off;

使用默认combined格式记录日孝李凯志:access_log logs/access.log 或access_log logs/access.log combined;

注意:nginx进程设置的用户和组必须对日志路径有创建文件的权限,否则报错。

此外,对于每一条日志记录,都将是先打来文件,再写入日志,然后关闭,可以使用open_log_file_cache来设置日志文件缓存(默认是off)。

系统自动切割,利用linux操作系统的定时任务,执行sh脚本,来完成日志的自动切割。

㈡ 如何关闭nginx,apache的默认访问日志

如果搜返是rpm安装山漏拿的一般会在/var/log/httpd/逗搭下面 #head -1000 /var/log/httpd/access_log 如果是源码包安装的会在/usr/local/apache2/log/下面 #head -1000 /usr/local/apache2/log/access_log

㈢ 14《Nginx 入门教程》Nginx的日志功能

通常,在生产环境中使用 Nginx 进行反枝搭型向代理和负载均衡或者各种其他处理时,良好的日志记录是非常关键的一环。通过精心配置的 Nginx 日志,我们可以获取用户的真实 ip、浏览器信息,请求处理时间,请求URL等,这样方便我们排查和回溯错误。具体要记录哪些信息,可以通过 Nginx 中的 log_format 指令定义,由它定义日志的格式。而对于使用哪种日志格式和设置日志的保存路径则由 access_log 指令指定的。另外在 Nginx 中还有一个配置服务器和请求处理过程中的错误信息的指令,那就是 error_log指令。最后,如果在配置的日志文件路径中使用了变量,我们可以通过open_log_file_cache指令来设置缓存,提升性能。对于大型的网站而言,大量的 http 请求意味着大量的日志记录,及时按天或按大小进行 Nginx 日志备份也至关重要的。

在 Nginx 的日志模块主要有2个, ngx_stream_log_mole 和 ngx_http_log_mole,分别表示四层的日志模块和七层的日志模块,其指令和用法都是一致的,接下来我们只针对 http 请求的日志进行说明和使用。

在 ngx_http_log_mole 模块中,只3个指令,分别是 access_log、log_format 和 open_log_file_cache。这些指令具体的格式如下:

ngx_http_log_mole 模块用来按某个格式来记录请求的日志。模块中的 log_format 指令就是用来设置打印日志的格式,该指令中可以使用 Nginx 中的各种变量,比如保存远端ip地址的变量$remote_addr等。一个简单的示例如下:

接下来是 access_log 指令。参考前面的指令格式。关闭日志记录,直接是写 access_log off ,如果打开 access 日志,它的写法是:

access_log 指令示例:

每一条日志记录的写入都是先打开文件再写入记录,然后关闭日志文件。如果你的日志文件路径猛猜中使用了变量,如 access_log /var/logs/$host/access.log ,为提高性能,可以使用 open_log_file_cache 指令设置日志文件描述符的缓存。可以通过 open_log_file_cache off 关闭该缓存。该指令的几个参数选项说明如下:

最后 error_log 是 错误日志配置指令,主要记录客户端访问 Nginx 出错时的日志,它不不支持自定义日志格式。通过检查错误日志,可以快速定位线上问题,所以也是很重要的。关闭错误日志的方式和 access_log不一样,没有 error_log off 这样关错误日志的用法,反而会将错误日志打到名为 off 的文件中。常用的关闭方式是:

就像在 Linux 系统中,输出到 /dev/null 的内容实际上等枝物价于丢弃一样。

Nginx 的日志切割实现的核心是使用 nginx 命令的 reopen 参数实现,该参数的含义是重新开始记录日志文件。人工切的做法就是凌晨将日志备份,然后执行带reopen参数的命令:

执行后会重新生成 access.log 和 error.log,这就是手工切割的方式。通常我们会用 shell 脚本和定时任务来帮我我们完成自动切割。首先准备如下的 shell 脚本,它完成日志的备份以及给 nginx 进程发生 reopen 信号。

接下来,只要将这个脚本加入到 crontab 中即可,如下操作:

我们在 nginx.conf 中添加如下的日志配置:

这里我们综合了前面涉及的知识,这里只简单测试日志配置中 if 功能。我们设置请求的相应码为 3xx 和 4xx 时,日志不会记录。接下来,启动或者热加载 Nginx, 然后分别对应三个端口发送 http 请求并观察 access.log 日志:

本小节我们介绍了 log 相关的指令,包括访问日志和错误日志的指令。此外还介绍了 Nginx 中对日志切割的常用处理方法,这也是生产环境上使用日志备份的手段。

㈣ nginx/logs/access.log 可以删除吗

该文件为nginx的访问日志文件可以删除,删除后nginx启动还会产生
如果要关闭日志功能,在nginx配置文耐哪件则李中找到access_log一行昌盯码,改为access_log off;

㈤ Nginx日志

nginx的log日志分为access log 和 error log

access log :记录了哪些用户,哪些页面以及用户浏览器握历铅、ip和其他的访问信息
error log :是记录服务器错误日志

access.log日志的形式如下:

其实nginx access日烂历志的格式不是一成不变的,是可以自定义的。
在nginx的nginx.conf配置文件找到:log_format 这里就是日志的格式
看一下和上述日志匹配的log格式设置段好:

配置access log日志的存储位置及文件,注意:access.log文件是可以按日期进行分割的,方便查看及处理

㈥ nginx 日志怎么开启

nginx访问日志默认燃指为开启状态,日志位于皮丛配nginx安装目录下的logs/access.log

日志配置指令如下:
access_log path [format [buffer=size] [gzip[=level]] [flush=time] [if=condition]];
access_log off;
第一行是启用日志
第二行是关闭日志
启用日志的必选郑搭参数为path表示日志路径

㈦ nginx怎么关闭favicon.ico,robots.txt日志记录

有朋友问我,如何销橘关闭nginx中favicon.ico、robots.txt日志记录,不允许访问某些隐藏文件。
其实,有个favicon.ico挺好的,当网页放到任务栏上可以区分出自己胡铅的网站,对用户体验也不错。
另外就是robots.txt文件用好了,对屏蔽恶意收录是很有帮助的。
nginx日志最近发生大量访问favicon.ico无法找到的404错误日志,影响服务器性能,对于一个高并发的服务器每一个错误都会影响裤斗好性能,所以需要关闭访问favicon.ico的日志记录功能。
操作方法:

# 把以下配置放到 server {} 块.#关闭favicon.ico不存在时记录日志location = /favicon.ico {log_not_found off;access_log off;} www.jbxue.comlocation = /robots.txt {allow all;log_not_found off;access_log off;}#
不允许访问隐藏文件例如 .htaccess, .htpasswd, .DS_Store (Mac).location ~ /\. {deny all;access_log off;log_not_found off;}

㈧ Nginx相关知识点

Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的。从2004年发布至今,凭借开源的力量,已经接近成熟与完善。

Nginx功能丰富,可作为HTTP服务器,也可作为反向代理服务器,邮件服务器。支持FastCGI、SSL、Virtual Host、URL Rewrite、Gzip等功能。并且支持很多第三方的模块扩展。

Nginx的稳定性、功能集、示例配置文件和低系统资源的消耗让他后来居上,在全球活跃的网站中有12.18%的使用比率,大约为2220万个网站。

自行安装

正向代理: 代理服务器站在客户端那边就是正向代理;
反向代理: 代理服务器站在原始服务器那边就是反向代理;
详解参考点击 Nginx正向代理与反向代理

Nginx在做反向代理时,提供性能稳定,并且能够提供配置灵活的转发功能。
Nginx可以根据不同的正则匹配,采取不同的转发策略,比如图片文件结尾的走文件服务器,动态页面走web服务器,只要你正则写的没问题,又有相对应的服务器解决方案,你就可以随心所欲的玩。
并且Nginx对返回结果进行错误页跳转,异常判断等。如果被分发的服务器存在异常,他可以将请求重新转发给另外一台服务器,然后自动去除异常服务器。

如果你的nginx服务器给2台web服务器做代理,负载均衡算法采用轮询,那么当你的一台机器web程序iis关闭,也就是说web不能访问,那么nginx服务器分发请求还是会给这台不能访问的web服务器,如果这里的响应连接时间过长,就会导致客户端的页面一直在等待响应,对用户来说体验就打打折扣,这里我们怎么避免这样的情况发生呢。这里我配张图来说明下问题。

如果负载均衡中其中web2发生这样的情况,nginx首先会去web1请求,但是nginx在配置不当的情况下会继续分发请求道web2,然后等待web2响应,直到我们的响应时间超时,才会把请求重新分发给web1,这里的响应时间如果过长,用户等待的时间就会越长。

下面的配置是解决方案之一:

如果使用upstream指令配置了一组服务器作为被代理服务器,服务器中的访问算法遵循配置的负载均衡规则,同时可以使用该指令配置在发生哪些异常情况时,将请求顺次交由下一组服务器处理。

状态值可以是:error|timeout|invalid_header|http_500|http_502|http_503|http_504|http_404|off

Nginx提供的负载均衡策略有2种:内置策略和扩展策略。
内置策略: 1.轮询;2.加权轮询;3.Ip hash;
扩展策略: 就天马行空,只有你想不到的没有他做不到的啦,你可以参照所有的负载均衡算法,给他一一找出来做下实现。

Ip hash算法,对客户端请求的ip进行hash操作,然后根据hash结果将同一个客户端ip的请求分发给同一台服务器进行处理,可以解决session不共享的问题。

eg:

开启简单的缓存配置,只需要两个指令:proxy_cache_path和proxy_cache。
proxy_cache_path: 配置缓存的存放地址和其他的一些常用配置;
proxy_cache:指令是为了启动缓存;

相关配置说明:

该指令用于定义满足条件的响应不会被保存到缓存中。在条件字符串中至少有一个条件不为空或者0,符合这样条件的响应才不会被缓存。
举例如下

其中,cookie_nocache、arg_nocache...皆为变量,可以根据你访问的匹配策略来设置,其值只有2类,0和非0;

访问匹配策略例如:

如果在此链式配置中,只要有一个值不为0,则不会cache;例如:

则不会被cache.

注:一般会配合proxy_cache_bypass共同使用;

该指令用于定义哪些情况不从cache读取,直接从backend获取资源;配置方式同proxy_no_cache。

给缓存数据定义一个键,例如

该指令用于设置缓存哪些HTTP方法,默认缓存HTTP GET/HEAD方法,不缓存HTTP POST 方法.。

设置不同响应码的缓存时间,当不指定响应码的时候,例如

只对响应码为200,301,302的访问请求资源设置缓存时间,此外可以个性化定制,例如:

此外,还可以在相应header里设置优先级更高的缓存有效时间:

不缓存包含在field的响应header,可以设置的值有:“X-Accel-Redirect”, “X-Accel-Expires”, “X-Accel-Limit-Rate”,“X-Accel-Buffering”, “X-Accel-Charset”, “Expires”, “Cache-Control”, “Set-Cookie” (0.8.44), and “Vary”。
如果上述的header field没有设置为忽略,则header filed中有“X-Accel-Expires”, “Expires”, “Cache-Control”, “Set-Cookie”, and “Vary”的话,响应会被缓存。

该指令用于设置缓存的最小使用次数,默认值为1

源站有问题时,nginx可以通过proxy_cache_use_stale指令开启容错能力,即使用缓存内容来响应客户端的请求。举例如下:

如上配置表示,当作为cache的NGINX收到源站返回error、timeout或者其他指定的5XX错误,并且在其缓存中有请求文件的陈旧版本,则会将这些陈旧版本的文件而不是错误信息发送给客户端。

使用NGINX,不需要建立一个RAID(磁盘阵列)。如果有多个硬盘,NGINX可以用来在多个硬盘之间分割缓存。举例如下:

在这份配置中,使用了3个独立的缓存,每个缓存专用一块硬盘,另外,3个独立的线程池也各自专用一块硬盘。

缓存之间(其结果就是磁盘之间)的负载均衡使用split_clients模块,split_clients非常适用于这个任务。
在 proxy_cache_path指令中设置 use_temp_path=off ,表示NGINX会将临时文件保存在缓存数据的同一目录中。这是为了避免在更新缓存时,磁盘之间互相复制响应数据。

通过访问日志,你可以得到用户地域来源、跳转来源、使用终端、某个URL访问量等相关信息;
通过错误日志,你可以得到系统某个服务或server的性能瓶颈等。
因此,将日志好好利用,你可以得到很多有价值的信息。

打开nginx.conf配置文件:vim /usr/local/nginx/conf/nginx.conf
日志部分内容:
#access_log logs/access.log main;
日志生成的到Nginx根目录logs/access.log文件,默认使用“main”日志格式,也可以自定义格式。
默认“main”日志格式:

参数明细表:

查看日志命令tail -f /usr/local/nginx/logs/access.log

打开nginx.conf配置文件去掉#注释见下图:

自定义某一个server配置的日志,使用“main”日志格式。

日志生成的到Nginx根目录logs/access.log文件,默认使用“main”日志格式,也可以自定义格式。

重新读取加载Nginx配置文件:

执行命令:nginx-s reload

网上一位老师写的log文件分解的脚本

此脚本执行时间根据自己公司情况来定,可以设置默认一天执行一次;

创建crontab设置作业

设置日志文件存放目录crontab -e

*/1 * * * * sh /usr/local/software/nginx/nginx_log.sh
此设置的为一分钟,如果设置一天自行修改;

默认的 nginx 配置文件 nginx.conf 内容如下

示例

几个常见配置项:

注意:

惊群现象:一个网路连接到来,多个睡眠的进程被同事叫醒,但只有一个进程能获得链接,这样会影响系统性能
每个指令必须有分号结束。

进入安装目录下的sbin

㈨ 怎么关闭nginx的日志

nginx.conf中要在http一节里面唤做添加

access_logoff;
error_logoff;

这样Nginx才会停止输出日志。

为了避免派旁后尘链橡来人在被误导,所以在此特别说明下。

热点内容
格来云服务器到期 发布:2025-02-14 06:48:43 浏览:904
订奥迪A7哪个配置比较好 发布:2025-02-14 06:44:23 浏览:139
spss的数据库 发布:2025-02-14 06:37:32 浏览:119
sql除法运算 发布:2025-02-14 06:30:43 浏览:534
如何在家部署一台服务器 发布:2025-02-14 06:22:04 浏览:433
u盘里文件夹是空的 发布:2025-02-14 06:13:22 浏览:803
安卓如何缩放图片尺寸 发布:2025-02-14 06:06:34 浏览:116
六年级简便算法题 发布:2025-02-14 05:53:02 浏览:8
脚本精灵要root吗 发布:2025-02-14 05:51:30 浏览:212
安卓手机如何录屏怎么去掉触摸显示 发布:2025-02-14 05:36:23 浏览:996