• nginx学习


    1,检测linux上是否 通过yum安装了nginx

    rpm -qi nginx

    2.安装nginx之前的依赖包

    yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel openssl openssl-devel -y

    3.源代码编译安装tenginx

    1.下载淘宝nginx的源代码包
        wget http://tengine.taobao.org/download/tengine-2.3.0.tar.gz
        
    2.解压缩源代码
        tar -zxvf tengine-2.3.0.tar.gz
            
    3.切换进入nginx源代码目录 进行编译安装
        cd  tengine-2.3.0
        
    4.释放编译文件,指定安装路径
        ./configure --prefix=/opt/s18tngx/
    
    5.开始编译且安装
        make && make install 
            
    6.卸载之前通过yum安装的nginx  
        yum remove nginx -y 
        
        
    7. 查看nginx的安装目录,有哪些东西

        [root@wangdachui s18tngx]# ls
        conf 存放nginx的配置文件目录的
        html 存放前端文件的地儿
        logs 存放nginx日志文件的目录
        sbin 存放nginx的可执行命令

      

      8.配置nginx的环境变量,支持快捷启动
        vim /etc/profile
        写入到PATH

      9.启动nginx
        直接输入nginx命令

      10.修改nginx的首页文件
        存放在nginx安装目录下的html文件夹中,名为index.html的文件

      vim index.html
        写入你想要的数据


    4.nginx的配置文件(片段)

    [root@wangdachui conf]# grep -v "^#" nginx.conf|grep -v "^$"
    
    worker_processes  1;  #全局变量,工作进程数 
    events {
        epoll;
        worker_connections  65536;  #根据linux的文件描述符来修改 
    }
    
    #http代表nginx核心功能块 
    http {
        include       mime.types;
        default_type  application/octet-stream;
       
        
        gzip  on; #开启压缩图片功能
        #代表nginx的虚拟主机功能 
        #当我们访问192.168.226.128:80/就进入这个虚拟主机的配置 
        #第一个虚拟主机,。dnf网址
        server {
            #nginx监听的端口
            listen       80;
            #填写服务器的域名,没有域名就写ip地址即可
            
            server_name  192.168.226.128;
            #路径资源匹配 ,匹配 /  目录 
            #192.168.226.128:80/
            #这是最低级匹配,所有的请求,都会进入这个location
            location / {
                #root参数指的是定义一个虚拟主机根目录
                root   html;
                #index参数指定首页文件的名字 
                index  index.html index.htm;
            }   
            #第二个虚拟主机 韩剧网址
        server  {
            listen 80;
            server_name  192.168.226.128;
            location  /  {
                root   /opt/s18hanju/; # 在opt下创建s18hanju文件夹,在s18hanju中创建index.html
                index index.html;
            }
        }
    
    }

    nginx多虚拟主机有俩概念
    1.如果没有域名,写ip地址的话,虚拟主机是自上而下的加载顺序 ,
    2.如果有域名,nginx会基于域名区分虚拟主机


    配置完成后,重新加载nginx, 平滑重启

    nginx -s reload 

    学习nginx的状态模块功能

    1.修改nginx.conf的配置文件
            找到一个server虚拟主机,写入如下配置
            
                    location /status  {
            stub_status on;
    }    
    2.重启nginx,加载这个status状态模块功能
        
    3.通过ab压测命令,去给网站发起n多个请求
        安装ab压测命令工具
            yum -y install httpd-tools
        
    4.给服务器nginx,发起一万个请求
        ab -kc 1000 -n 10000 http://192.168.226.128/

    nginx的access.log访问日志功能

    编辑nginx.conf打开如下配置参数
        打开如下注释
        log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                          '$status $body_bytes_sent "$http_referer" '
                          '"$http_user_agent" "$http_x_forwarded_for"';
    
        access_log  logs/access.log  main;
        access_log  "pipe:rollback logs/access_log interval=1d baknum=7 maxsize=2G"  main;
        
        重启nginx查看logs下的日志文件,检测用户请求信息
        
        tail -f  logs/access.log 

    nginx限制ip访问功能

    找到nginx.conf修改如下代码
            location / {
                #禁止192.168.226.0/24 这个地址段所有的ip访问 
                deny  192.168.226.1 ; 
                root   /opt/s18dnf;
                index  index.html index.htm;
            }

    实现nginx的反向代理功能

    一个是真实资源文件        192.168.226.128      就理解为房东 ,提供dnf的资源界面
    
    一个是反向代理服务器    192.168.226.129   理解为中介,当我们访问中介,就访问到dnf的网站资源
    
        1.分别在2台机器,安装nginx  
        
        2.资源服务器已经配置好,返回dnf页面
        
        3.反向代理服务器配置如下
        
        vim编辑nginx.conf  找到第一个server虚拟主机
        修改配置如下
               location / {
                    proxy_pass  http://192.168.226.128;
            }
    
        4.重启nginx,查看反向代理效果

  • 相关阅读:
    Delphi程序流程三(2)(while)PS:最简单的任务管理器( 组件LISTVIEW的用法 增加LISTVIEW的读取 删除)
    Delphi 编译错误信息表(转载自万一博客)
    Delphi程序流程三(1)(while)PS:顺便写了个最简单的任务管理器(包含申明API 自己申明参数为结构型API 组件LISTVIEW的用法)
    Delphi程序流程二(for)
    内核编程 warning C4273: 'PsGetProcessId' : inconsistent dll linkage
    简单的SEH处理
    【转】VC6.0各个文件说明
    【转】两篇关于__security_cookie的介绍
    完美解决 error C2220: warning treated as error
    【转】IDA 与VC 加载符号表
  • 原文地址:https://www.cnblogs.com/q455674496/p/10647804.html
Copyright © 2020-2023  润新知