1. 程式人生 > >nginx 用戶訪問添加密碼;autoindex模塊詳解;傳送client IP

nginx 用戶訪問添加密碼;autoindex模塊詳解;傳送client IP

nginx 用戶 訪問 添加 密碼

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