栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

web服务器----nginx 基础

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

web服务器----nginx 基础

文章目录
  • 基础
    • nginx简介
    • 常见的web服务器
    • nginx优点
    • nginx常用功能
    • 准备工作
    • nginx的centos安装
    • nginx服务的启停
    • nginx的版本升级
    • nginx配置文件

基础 nginx简介

nginx官网

  1. 高性能的web服务器,用于正向代理、反向代理、负载均衡;
  2. 使用C语言编写;
  3. 也是POP3/SMTP/IMAP代理服务器
    相关概念:
    web服务器,为用户提供网上信息浏览;
    http, 超文本传输协议;
    正向代理,代理客户端;
    反向代理, 代理服务器;
    负载均衡, 将接收到的所有的客户端的请求,均匀转发给不同的服务器,使服务资源得到合理利用。
常见的web服务器
  1. IIS, 基于windows的服务器;
  2. Tomcat,java领域的重量级的web服务器;
  3. Apache, 出现比较久,不支持高并发;
  4. nginx, 高性能
    目前,国内以nginx使用为主
nginx优点
  1. 速度快,高并发:采用多进程&IO多路复用;
  2. 多模块组成,扩展性强;
  3. 多进程,保证高可靠性;master进程管理多个worker进程;
  4. 热部署,不停止服务的情况下,进行升级、更新;
  5. 成本低,BSD开源许可

    nginx可以修改并免费用于商业领域
nginx常用功能
  1. 静态资源部署
  2. 地址重写
  3. 反向代理、负载均衡(轮询、加权轮询、ip_hash、url_hash)
  4. web缓存、高可用环境、用户认证
  5. 重要部分:
    nginx.conf、error.log、access.log
准备工作
  1. centos虚拟机
  2. 查看linux(uname -a)内核>2.6
  3. 虚拟机为桥接/net,必须可以联网;
  4. 关闭防火墙
# 临时关闭防火墙
systemctl stop firewalld
systemctl status firewalld
# 永久关闭
systemctl disable firewalld
  1. 停用selinux(sestatus查看)
cd /etc/selinux
sudo vim config
# 注释,并添加
# SELINUX=enforcing
SELINUX=false

保存,退出, reboot

nginx的centos安装
  1. 源码安装
# gcc编译器
sudo yum install -y gcc
# 兼容正则表达式
yum install -y pcre pcre-devel

# 压缩包  openssl通信加密
yum install -y zlib zlib-devel openssl openssl-devel
# rpm -qa xxx
# 包管理工具

# 下载nginx
wget  https://nginx.org/download/nginx-1.20.2.tar.gz
# 解压
sudo -s  
tar -zxvf xxx.tar.gz -C /usr/local/
# cd nginx-xxx
./configure
# configure复杂安装的参数
# --prefix=path   安装的目录,默认/usr/local/nginx
# --sbin-path=path 可执行文件的路径,在prefix/sbin/nginx
# --modules-path=xxxx, 动态模块的安装路径
# --conf-path=xxx, 配置文件的路径(nginx.conf)
# --error-log-path =xx   错误日志路径
# --http-log-path = xx , 访问日志路径
# --pid-path  进程id文件路径
# --lock-path  锁文件路径

# 编译
make
# 安装   默认安装在/usr/local/nginx
make install 
# 进入安装目录bin,启动
./nginx  
# 浏览器中输入当前ip地址(监听80),查看是否成功

  1. yum安装
# nginx官网--文档--linux
# 参考官网步骤
  1. 两种方式的差异
# 查看版本
nginx -V  
# 两种安装差异是configure arguments参数 
# 安装的目录(/usr/local/nginx)下的文件
# html 页面文件 index.html  50x.html
# conf/nginx.conf  配置文件

  1. 卸载nginx,并重新安装
# 1. 停止nginx进程
./nginx -s stop 
# 2. 删除安装的nginx
sudo rm -rf /usr/local/nginx
# 3. 在解压的文件目录下,清除编译环境
make clean
nginx服务的启停
  1. nginx服务的信号—控制


    nginx,多进程方式运行;
    master进程,管理worker进程;
    worker进程,处理用户的请求;
# 立即关闭
kill -term 11720
# 优雅地关闭,中间的部分即为信号量
kill -quit 2317

# 重新加载配置文件
kill -hup 11720

# 仅仅关闭worker进程,将信号给master
kill -winch 11720
# 热升级
kill -usr2 11720
  1. nginx命令行–控制
./nginx -h  # help
./nginx  -v/-V    # 版本信息
./nginx -t/-T  # 测试配置文件的语法是否有错
./nginx -s stop  # 信号量--》 立即关闭
./nginx -s quit  # 优雅地关闭
./nginx -s reload  # 重新加载配置文件
./nginx -c xxx.conf  # 指定配置文件路径

 

nginx的版本升级

在服务不停止的情况下,升级

  1. 信号量
# 1. 安装一个低版本的,并启动nginx
# 2. 在高版本解压目录下的configure & make
# 3. 复制低版本master&worker进程
#    kill -usr2 主进程id
# 4. mv /usr/local/nginx/sbin/nginx  xxx/nginxold
# 5. cp /home/laufing/nginx-1.20.2/objs/nginx  /usr/local/nginx/sbin/

# 6. 最后kill -term 旧的主进程id
  1. make命令
    将新版别的nginx二进制(make编译)文件,复制到安装目录; 然后make upgrade
nginx配置文件
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/851162.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号