nginx相關

Nginx虛擬主機:設置默認虛擬主機html

    server {nginx

        listen 80 default_server;web

//若是不配置,則是虛擬主機中的第一個爲默認虛擬主機。瀏覽器

        server_name www.taobao.com;bash

        location / {服務器

            root /data/wwwroot/default;操作系統

            index index.html;代理

        }日誌

}orm

 

 

 

Nignx的用戶驗證:

    server {

        listen 80;

        server_name www.taobao.com;

        location / {

            root /data/wwwroot/default/admin;

            index index.html;

            auth_basic "please admin";

            auth_basic_user_file /usr/local/nginx/conf/.htpasswd;

        }

    }

[root@localhost nginx]# htpasswd -c /usr/local/nginx/conf/.htpasswd zhangsan

New password:

Re-type new password:

Adding password for user zhangsan

驗證

 

Nignx域名重定向:

    server {

        listen 80;

        server_name www.taobao.com www1.taobao.com www2.taobao.com;

        location / {

            root html/abc;

            index index.html;

            if ($host != 'abc' ) {

                rewrite ^/(.*)$ http://www.taobao.com/$1 redirect;

            } //permanent是301返回碼,還能夠修改成redirect,爲302。

        }

}

 

Nginx訪問日誌:

$remote_addr  :客戶端IP(公網IP)              $request_uri  :訪問的uri

$http_x_forwarded_for :代理服務器IP        $status  :狀態碼

$time_local          :服務器本地時間              $http_referer  :referer跳轉來源

$host  :訪問主機                                         $http_user_agent :客戶端瀏覽器

http referer是header的一部分,當瀏覽器向web服務器發送請求的時候,通常會帶上referer,告訴服務器我是從哪一個頁面鏈接過來的,服務器基於此能夠獲取一些信息用於處理。

$remote_addr :遠程請求地址; $body_bytes_sent:請求文件內容的大小

$http_user_agent :用來檢查瀏覽頁面的訪問者是用的什麼操做系統包括版本號,瀏覽器及其版本號,以及用戶我的的偏好的代碼等。

 

主配置文件:

    log_format  main '$remote-addr $http_x_forworded_for [$time_local]'

                     '$host "$request_uri" $status'

                     '"$http_referer" "http_user_agent"';

    server {

        listen 80;

        server_name www.taobao.com;

        access_log /tmp/taobao.com.log main;

        location / {

            root html/abc;

            index index.html;

        }

}

 

 

 

 

Nginx日誌切割:腳本實現

Vim /usr/local/sbin/nginx_logrotate.sh

#!/bin/bash

#nginx_logfile_path=/tmp/

d=`date -d "-1 day" +%Y%m%d`

logdir="/tmp/"

nginx_pid="/usr/local/nginx/logs/nginx.pid"

cd $logdir

for log in `ls *.com.log`

do

        mv $log $log-$d

done

/bin/kill -HUP `cat $nginx_pid`

相關文章
相關標籤/搜索