nginx 用户访问添加密码;autoindex模块详解;传送client IP

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx 用户访问添加密码;autoindex模块详解;传送client IP相关的知识,希望对你有一定的参考价值。

nginx

基于用户的访问控制

htpasswd命令是Apache的Web服务器内置工具,用于创建和更新储存用户名、域和用户基本认证的密码文件。

1.建立口令文件——创建密码文件

一般口令文件最好创建在 /usr/local/nginx/ 下,这样是为了方便管理。下面是命令:

mkdir /usr/local/nginx

htpasswd -cm /usr//local/nginx/passwd  user01      //-c:创建一个加密文件;

htpasswd -m /usr/local/nginx/passwd user20    //-m:默认采用MD5算法对密码进行加密

cat /usr/local/nginx/passwd           //查看生成的加密密码

user01:$apr1$Cw6eF/..$MNBh6rvkvsfH9gDZ/kEhg/

然后再nginx的http上下文内的    server的上下文内的   location上下文内添加两行:

auth_basic "nginx access test!";            //这样没实质性作用只是提示

auth_basic_user_file /usr/local/nginx/passwd;    //这个才是

技术分享图片技术分享图片

htpasswd命令的使用还有很多种姿势下面是姿势大全!!!

http://man.linuxde.net/htpasswd

autoindex模块                

autoindex on | off              //,打开或关闭目录浏览功能

目前的版本默认off(关闭)

location / {

autoindex on;

}

关闭此模式能防止网页不存在不会显示目录

on(打开)的话,如果url下没有文件,就能看见目录,这是很危险的事情,别人会在你的目录下乱跑!!!!

但是一般打开都是用作Downloads下载页面

Nginx默认是不允许列出整个目录的。如需此功能,打开nginx.conf文件或你要启用目录浏览虚拟主机的配置文件,在server或location 段里添加上autoindex on;来启用目录流量,下面会分情况进行说明。

另外Nginx的目录流量有两个比较有用的参数,可以根据自己的需求添加:

autoindex_exact_size off;

默认为on,显示出文件的确切大小,单位是bytes。

改为off后,显示出文件的大概大小,单位是kB或者MB或者GB

autoindex_localtime on;

默认为off,显示的文件时间为GMT时间。

改为on后,显示的文件时间为文件的服务器时间

1、整个虚拟主机开启目录流量

在server段添加

location / {

autoindex on;

autoindex_localtime on; #之类的参数写这里

}

2、单独目录开启目录流量

2.1:直接二级目录开启目录流量

location /down/ {

autoindex on;

}

2.2:虚拟目录开启目录流量

location /down/ {

alias /home/wwwroot/lnmp/test/;

autoindex on;

}

详细参照:http://nginx.org/en/docs/http/ngx_http_autoindex_module.html

如果想希望做出漂亮的目录列表,支持header,footer则可以安装三方插件:

http://wiki.nginx.org/NginxNgxFancyIndex

重启nginx,使其生效。

HttpAutoindex模块   nginx中文官方文档

链接:https://www.nginx.cn/doc/standard/httpautoindex.html

传送client IP

共两步

(1)proxy_set_header X-Real-IP $remote_addr        在中间件nginx,配置文件(/etc/nginx/nginx.conf)或者/etc/nginx/conf,d/DIY.conf          文件内添加

技术分享图片技术分享图片

(2)有后端服务器上配置:LogFormat "%{X-Real-IP}i ......

vim  /etc/httpd/conf/httpd.conf      //添加的内容是你上面设置的,写入的格式照抄后面的双引号的格式  

技术分享图片技术分享图片


以上是关于nginx 用户访问添加密码;autoindex模块详解;传送client IP的主要内容,如果未能解决你的问题,请参考以下文章

nginx 使用密码认证

nginx反向代理时配置访问密码

nginx增加访问验证

通过nginx给skywalking后台添加权限

nginx设置用户账号和密码访问

nginx配置用户名密码来控制访问请求