nginx檢視實時日誌並設簡單的訪問驗證

weixin_34120274發表於2018-02-07

關於檢視實時日誌的思路

1.我一般是自畫頁面,寫後端api
2.nginx可以實現簡單的效果

配置
worker_processes 1;
events {
    worker_connections 1024;
}
http {
    include mime.types;
    default_type application/octet-stream;
    sendfile on;
    keepalive_timeout 65;
    server {
        listen 80;
        server_name localhost;
        location / {
            root html;
            index index.html index.htm;
        }
        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
            root html;
        }
    }
}
配置檢視目錄
 location /logs {
     alias /application/nginx-1.9.7/logs;
     #Nginx日誌目錄

     autoindex on;
     #開啟目錄瀏覽功能

     autoindex_exact_size off;
     #預設為on,顯示出檔案的確切大小,單位是bytes
     #顯示出檔案的大概大小,單位是kB或者MB或者GB

     autoindex_localtime on;
     #預設為off,顯示的檔案時間為GMT時間。
     #改為on後,顯示的檔案時間為檔案的伺服器時間

     add_header Cache-Control no-store;
     #讓瀏覽器不儲存臨時檔案
 }

開啟在瀏覽器開啟log檔案,如果不開啟再點選檔案的時候就下載而不是開啟

# vim mime.types
types {
 text/html html htm shtml;
 text/log log;
 text/css css;
 text/xml xml;
 .............

檢測語法,然後讓nginx配置生效,在瀏覽器檢視

# /application/nginx-1.9.7/sbin/nginx -t
nginx: the configuration file /application/nginx-1.9.7/conf/nginx.conf syntax is ok
nginx: configuration file /application/nginx-1.9.7/conf/nginx.conf test is successful
# /application/nginx-1.9.7/sbin/nginx -s reload

開啟瀏覽器輸入域名或者IP,後面加上logs,然後點選檔案就可以開啟了,如果日誌隨隨便便就可以被別人檢視是不是很不安全,所以我們要在加一層nginx使用者認證。

1500770-05e440c6d5a76f75.png
nginx-web-01
1500770-21986b4ac0e4036d.png
nginx-web-02

安裝httpd-tools,用於帳號密碼生成

[root@AnSheng ~]# yum -y install httpd-tools

建立認證的賬號

[root@AnSheng ~]# htpasswd -c /application/nginx-1.9.7/conf/loguser loguser
New password:
Re-type new password:
Adding password for user loguser
#密碼需要輸入兩次

編輯nginx配置檔案,在logs的location加入下面的內容

location /logs {
 ......
 alias PATH;
 autoindex on;
 autoindex_exact_size off;
 autoindex_localtime on;
 add_header Cache-Control no-store;
 auth_basic "Restricted";
 #Nginx認證
 auth_basic_user_file /application/nginx-1.9.7/conf/loguser;
 #認證賬號密碼儲存的檔案
}

然後再開啟的時候就會提示輸入賬號和密碼,登陸之後才可以檢視。

1500770-e7f16460c540898c.png
nginx-web-03

相關文章