发表于: 2017-08-18 23:41:59

1 944


今天完成的事情:学习nginx

1 虚拟主机管理

1.1 Nginx管理虚拟主机

虚拟主机使用的是特殊的软硬件技术,它把一台运行在因特网上的服务器主机分成一台台“虚拟”的主机,每台虚拟主机都可以是一个独立的网站,可以具有独立的域名,具有完整的Intemet服务器功能(WWW、FTP、Email等),同一台主机上的虚拟主机之间是完全独立的。从网站访问者来看,每一台虚拟主机和一台独立的主机完全一样。

利用虚拟主机,不用为每个要运行的网站提供一台单独的Nginx服务器或单独运行一组Nginx进程。虚拟主机提供了在同一台服务器、同一组Nginx进程上运行多个网站的功能。

 

1.2 Nginx基本配置

1、Nginx的主配置文件是:nginx.conf,nginx.conf主要组成如下:

# 全局区   有一个工作子进程,一般设置为CPU数 * 核数

worker_processes  1; 

events {

# 一般是配置nginx进程与连接的特性

# 如1个word能同时允许多少连接,一个子进程最大允许连接1024个连接

worker_connections  1024;

}

# 配置HTTP服务器配置段

http {

# 配置虚拟主机段

server {

# 定位,把特殊的路径或文件再次定位。

       location  {

          

       } 

   }

   server {

  ...

   }

}


1.3 基于域名的虚拟主机

1、在http大括号中添加如下代码段:

server {  

        #监听端口 80  

        listen 80;   

                                

        #监听域名wyc.com;  

        server_name wyc.com;

          

        location / {              

                # 相对路径,相对nginx根目录。  

            root    wyc;  

            

            # 默认跳转到index.html页面  

            index index.html;                 

        }  

    } 

2、切换安装目录:cd/usr/local/nginx

3、创建目录:mkdir wyc

4、新建index.html文件:vi /usr/local/nginx/abc/index.html,文件内容:

<html>

        <head>

            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

        </head>

        <body>

            <h2>基于域名的虚拟主机-index</h2>

        </body>

</html>

5、重新读取配置文件:

/usr/local/nginx/sbin/nginx-s reload

kill -HUP进程号

6、配置windows本机host:

xxx.xxx.xxx.xxx wyc.com  #Linux服务器IP地址

7、访问:http://wyc.com:80/


2 日志管理

2.1 Nginx日志描述

通过访问日志,你可以得到用户地域来源、跳转来源、使用终端、某个URL访问量等相关信息;通过错误日志,你可以得到系统某个服务或server的性能瓶颈等。因此,将日志好好利用,你可以得到很多有价值的信息。

 

2.2 Nginx日志格式

打开nginx.conf配置文件:vi /usr/local/nginx/conf/nginx.conf,

日志部分内容:

#access_log  logs/access.log  main;

日志生成的到Nginx根目录logs/access.log文件,默认使用“main”日志格式,也可以自定义格式。 

默认“main”日志格式:


参数明细:

$remote_addr                     客户端的ip地址(代理服务器,显示代理服务ip)

$remote_user                      用于记录远程客户端的用户名称(一般为“-”)

$time_local                          用于记录访问时间和时区

$request                               用于记录请求的url以及请求方法

$status                                 响应状态码,例如:200成功、404页面找不到等。

$body_bytes_sent                给客户端发送的文件主体内容字节数

$http_user_agent                 用户所使用的代理(一般为浏览器)

$http_x_forwarded_for         可以记录客户端IP,通过代理服务器来记录客户端的ip地址

$http_referer                        可以记录用户是从哪个链接访问过来的


2.3 Nginx自定义日志

打开nginx.conf配置文件:

vi /usr/local/software/nginx/conf/nginx.conf,去掉#注释见下图:

自定义某一个server配置的日志,使用“main”日志格式。

日志生成的到Nginx根目录logs/access.log文件,默认使用“main”日志格式,也可以自定义格式。

重新读取加载Nginx配置文件:

执行命令:/usr/local/nginx/sbin/nginx-s reload

查看日志文件:

执行命令:tail -100f /usr/local/nginx/logs/wyc.access.log


明天计划的事情: 写完脚本过任务
遇到的问题:学过了又忘了......
收获:复习nginx


返回列表 返回列表
评论

    分享到