nginx相关

Nginx虚拟主机:设置默认虚拟主机

    server {

        listen 80 default_server;

//如果不配置,则是虚拟主机中的第一个为默认虚拟主机。

        server_name www.taobao.com;

        location / {

            root /data/wwwroot/default;

            index index.html;

        }

}

 

 

 

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`

 

posted @ 2018-08-04 15:33  禾子、  阅读(113)  评论(0编辑  收藏  举报