Nginx访问控制及日志处理

Nginx ">访问控制

1.Nginx 身份证验证

#cd /usr/local/nginx/conf
#mkdir htpasswd
/usr/local/apache2/bin/htpasswd -c /usr/local/nginx/conf/htpasswd/tongji linuxtone
#添加用户名为linuxtone
New password: (此处输入你的密码)
Re-type new password: (再次输入你的密码)
Adding password for user

http://count.linuxtone.org/tongji/data/index.html(目录存在/data/www/wwwroot/tongji/data/目录下)
将下段配置放到虚拟主机目录,当访问http://count.linuxtone/tongji/即提示要密验证:

location ~ ^/(tongji)/ {
root /data/www/wwwroot/count;
auth_basic "LT-COUNT-TongJi";
auth_basic_user_file /usr/local/nginx/conf/htpasswd/tongji;
}

2.Nginx 禁止访问某类型的文件.

如,Nginx下禁止访问*.txt文件,配置方法如下.

location ~* \.(txt|doc)$ {
if (-f $request_filename) {
root /data/www/wwwroot/linuxtone/test;
#rewrite …..可以重定向到某个URL
break;
}
}

方法2:

location ~* \.(txt|doc)${
root /data/www/wwwroot/linuxtone/test;
deny all;
}

实例:

禁止访问某个目录

location ~ ^/(WEB-INF)/ {
deny all;
}

3.使用ngx_http_access_module限制ip访问

location / {
deny 192.168.1.1;
allow 192.168.1.0/24;
allow 10.1.1.0/16;
deny all;
}
详细参见wiki: http://wiki.codemongers.com/NginxHttpAccessModule#allow

时间: 2024-09-03 07:19:37

Nginx访问控制及日志处理的相关文章

nginx error_log 错误日志配置说明

nginx error_log 错误日志配置说明: nginx的error_log错误日志类型有六种: [ debug | info | notice | warn | error | crit ] 例如:error_log logs/nginx_error.log crit; 这六种类型区别,自左至右,所记录的信息越来越少,debug记录更详细,crit记录的最少,如果不记录的话可以这么写:error_log /dev/null;

nginx error_log 错误日志级别以及错误日志配置、关闭错误日志说明

nginx安装好以后一般都是要配置下访问日志和错误日志,其中访问日志我们这里就不说了, 可以参考之前的文章.这里主要说明一下nginx的错误日志,这个大家都知道,开启日志主要是为了排查问题. 1,错误日志级别 error_log 级别分为 debug, info, notice, warn, error, crit  默认为crit, 格式如下: error_log  /your/path/error.log crit;  crit 记录的日志最少,而debug记录的日志最多.请根据实际情况选择

删除WDCP网站日志(Nginx或者Apache日志文件)

今天,有网友咨询需要解决WDCP面板站点环境中需要删除网站和系统日志文件,因为网站运行一年多以来导致日志数据巨大占用了大量的硬盘空间,几乎硬盘撑满,所以必须要删除日志.无论是系统日志还是网站日志,有些时候还是有用的,我们可以查看网站的访问情况以及分析网站的爬虫频率等,但大部分时候我们是不会去查看的. 所以,随着时间的积累,日志会越来越大的占用VPS主机硬盘容量,我们需要定期的处理.在WDCP面板中,无论我们启动的是NGINX还是APACHE环境,系统里都有日志文件的,一个是错误日志,一个是访问日

nginx 定时分割日志

nginx  是没有自动分割日志的,所以就需要自己实现日志分割 原   站点所有日志都放在一个目录里(文件名即站点名) 分割方式:每个站点一个目录,每天生成一个日志文件,根据文件名称生成目录 呆狐狸.凨 1.lanmps_cut_log.sh  shell文件 #!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/root/bin:~/bin export PATH # Check if us

linux中Zabbix监控Memcached PHP-FPM Tomcat Nginx MySQL 网站日志

Zabbix作为监控软件非常的灵活,支持的数据类型非常丰富,比如数字(无正负),数字(浮点),日志,文字等.我们需要做的就是使用脚本来收集好数据,然后zabbix收集并画图,设置告警线.这里我们来学习使用Zabbix监控Memcached.PHP-FPM.Tomcat.Nginx.MySQL及网站日志.  Memcached监控   自定义键值   UserParameter=memcached.stat[*],/data/sh/memcached-status.sh "$1" mem

nginx和php-fpm日志配置教程

配置好nginx和php后发现php-error一直没有日志.google了一下终于搞定了,主要对php-fpm.conf和php.ini做出如下修改: 1.修改php-fpm.conf 修改php-fpm.conf也可能是pool.d下的www.conf的worker进程配置,将错误信息输出.默认情况下worker进程的错误日志会重定向到/dev/null ; Redirect worker stdout and stderr into main error log. If not set,

nginx多server日志分割脚本分享_linux shell

1,配置多个server日志只要在$website变量增加并用空格分开就行.2,循环创建日志目录3,分割后用xz 压缩,当然没安装可以用gzip bzip2等等.4,注意我配置nginx日志文件名为 "access_{{站点网站}}.log" "error_{{站点网站}}.log" 复制代码 代码如下: # !/usr/bin/bashlog_dir="/usr/local/nginx/logs"back_log_dir="/disk

nginx实用的日志分析脚本

nginx日志分析脚本:  代码如下 复制代码 vi /mnt/logs/checklog.sh #!/bin/bash echo -e  "####################`date +%F`" >> /mnt/logs/400.txt echo -e  "####################`date +%F`" >> /mnt/logs/URL.txt echo -e  "####################`

简单的Nginx切割网站日志的脚本

今天在网上查阅Nginx的相关的优化,看到一篇关于Nginx切割日志的文章 于是自己设置了下,开始没生效,后来结果是我设置的路径有问题. 正常的Nginx的日志文件路径是在/usr/local/nginx/logs/ 因为用的Lnmp一键配置环境,所以日志的路径为/home/wwwlogs/ 脚本如下: #nginx日志切割脚本 #!/bin/bash #设置日志文件存放目录 logs_path="/home/wwwlogs/" #设置pid文件 pid_path="/usr