• Day11:Linux基础:nginx


    提供一种网络配置服务,安装步骤根前面的samba安装进程大致一致,都需要指定安装环境、安装软件、修改配置文件以、启动程序以及测试

    配置nginx

    指定安装环境

    根前面samba指定的安装环境一致

    yum install epel -y安装epel扩展源

    yum install nginx -y执行二进制安装软件包

    也可以自己下载nginx,然后进行源码安装,源码安装时注意提前安装需要的文件yum gcc -* glibc-* pcre -y.源码安装指定安装环境可以上官网查询,也可以指定默认配置,解压后进入解压后的文件夹后执行./configure —prefix=/usr/local/nginx来指定默认安装配置。安装过程可能需要配置重写功能,按照提示将其关闭

    修改配置文件

    其安装目录下的sbin目录显示启动文件,logs存放日志文件,html存放网页文件,conf存放配置文件如果要启动程序,直接执行sbin里面的nginx文件

    打开其conf/nginx.conf查看参数

    • 其中的worker process表示总共有几个worker在干活
    • 其中的error logs可以自己设定路径更改
    • 其中的evens下的worker_connection表示一个worker一次性可以接多少任务
    • 其中的日志格式为log_format是你main格式描述,产生的日志文件access_log存在于/usr/local/nginx/conf/mime.types中,动态访问此文件可以追踪访问机器的相关信息,可以通过自定义main格式描述来更改日志中需要提取的数据
    • 使用ll html/a.txt可以查看此文件的权限,服务端也可以修改其heml下的文件访问权限(chomd o-r html/a.txt)来设置访问端的读权限,这是访问短无法通过浏览器来访问a.txt
    • server中的listen表示的是默认端口,可以进行自定义修改,server中也有access_log,为局部配置,如果根前面的access_log不一样的话,先访问局部配置
    • 以上所有更改如果要生效必须要指定执行/usr/local/nginx/sbin/nginx -s reload来重新加载

    /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf以配置文件启动程序

    ps aux |grep nginx查看启动进程,进程中的master和worker分别表示组织者和劳动者,如果要停掉程序则执行/usr/local/nginx/sbin/nginx -s stop来停止启动服务,也可以执行/usr/local/nginx/sbin/nginx -s reload来重新加载。要查看端口执行netstat -an |grep 80

    测试

    浏览器中输入http://192.108.0.12:80/a.txt(分别为网络协议,IP地址、端口以及文件)则会直接得到本地的/usr/local/nginx下的a.txt文件,实际上是浏览器根据IP地址访问到机器本身,然后根据端口访问到nginx软件,根据其协议下载了a.txt这个文件

    nginx实现负载均衡

    基于nginx的负载均衡是一种反向代理的负载均衡,nginx本身可以当做代理服务器去用,也可以当做web服务器去用可以实现把内网及其隐藏起来的效果,也可以实现一个负载均衡的效果

    反向代理的配置

    准备四台及其,一个当做代理服务器,其他三台当做web服务器

    对web服务器进行配置

    1. 在根目录下创建html目录 mkdir /server1
    2. 在目录下创建html文件 echo 'server1' > /server1/index.html
    3. 创建配置文件目录mkdir /nginx_conf
    4. 复制默认的配置文件到自己的配置文件目录下并改名为web1.conf cp /usr/local/nginx/conf/nginx.conf /nginx_conf/web1.conf
    5. 修改配置文件 vim web1.conf
      挪到server下进行修改
      1. 修改http下的include后改为其绝对路径 /usr/local/nginx/conf/mine.types,注意后面为;
      2. 修改listen下的端口为8080
      3. 修改root 后面的网站根目录为/server1
      4. 修改index 后面的默认找到的文件名 index.html
    6. 启动程序 /usr/local/nginx/sbin/nginx -c /nginx_conf/web1.conf
    7. 查看网络端口 netstat -an |grep 8080

    对lb服务器进行配置

    1. 代理服务器不需要网络文件目录
    2. 在代理服务器下新建配置文件目录 mkdir /nginx_conf
    3. 复制/usr/local/nginx/conf/nginx.conf到/nginx_conf文件夹下创建lb.conf,打开进行配置
      1. 将server下的listen 后面改服务器端口为80
      2. 将http下的 default下新建一下函数
        upstream myapp1{ #其中myapp1 可以起任何名字nginx_webs
        server 192.123.123.12:8080;
        第一台web服务器的IP地址和端口
        如果在后面加上weight=2;意思是权重值改为2
        同上,第二胎web服务器
        同上,第三台服务器
        }
      3. 找到下面的location /修改其网络协议
        将里面的内容删掉,改为`porxy_pass http://nginx_webs;
    4. 保存退出
    5. 运行程序/usr/local/nginx/sbin/nginx -c /nginx_conf/lb.conf
    6. 测试,浏览器输入代理IP和端口,会分别显示三个web服务器的网络文件
  • 相关阅读:
    linq TO sqlite
    sqliteHelp类似sqlHelp
    Coolite Toolkit 学习笔记(1)
    多线程和委托简单例子
    datatableToObject 方法
    Linq To lucen.Net
    读取TXT文档示例
    VS2008快捷方式
    富文本编辑器嵌入指定html代码
    代码行数的统计
  • 原文地址:https://www.cnblogs.com/rendawei/p/6937175.html
Copyright © 2020-2023  润新知