nginx 安装、配置、负载均衡、反向代理<一>

ROCKY 9安装NGINX1.20,配置反向代理,负载均衡实验 ROCKY9 NGINX11.安装,反向代理,负载均衡 阅读详情

nginx 安装

本文主讲nginx的安装
nginx的负载均衡,反向代理,gzip压缩配置等,详见:nginx 安装、配置、负载均衡、反向代理<二>

准备工作: 一台能联公网的CentOS 7.x服务器

    # root 登录(因为要使用80端口,一般情况下需要root权限)
    cd ~

    # 新建nginx用户和nginx组
    groupadd -r nginx && useradd -r -g nginx -s /bin/false -M nginx

    # yum安装nginx必须的依赖库(已安装的会自动监测是否为最新并升级到最新版本)
    yum -y install openssl openssl-devel libxml2-devel libxslt-devel perl-devel perl-ExtUtils-Embed

    # 官网下载Nginx1.9.0的tar包,然后解压到服务器上
    wget -c http://nginx.org/download/nginx-1.9.0.tar.gz
    tar -zxf nginx-1.9.0.tar.gz && cd nginx-1.9.0

    # 下载pcre的tar包并解压,以便支持Nginx的Rewrite功能
    wget -c https://o3cex9zsl.qnssl.com/libs/nginx/pcre-8.36.tar.gz && tar -zxf pcre-8.36.tar.gz

    # 下载zlib的tar包并解压,以便支持Nginx的Gzip压缩功能
    wget -c https://o3cex9zsl.qnssl.com/libs/nginx/zlib-1.2.8.tar.gz && tar -zxf zlib-1.2.8.tar.gz

    # 新建Nginx1.9.0安装时所需要的目录
    cd /var/tmp/ && mkdir -p /var/tmp/nginx/{client,proxy,fastcgi,uwsgi,scgi}
    mkdir -p /var/run/nginx && cd ~/nginx-1.9.0

    # 至此,准备工作基本完成

配置安装参数

    # 执行 ./configure 命令安装,下面是完整的路径配置和安装,__注意不能有换行__,具体配置含义见文末
    ./configure --prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_spdy_module --with-http_dav_module --with-http_flv_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module --with-http_stub_status_module --with-http_sub_module --with-http_random_index_module --with-http_degradation_module --with-http_secure_link_module --with-http_gzip_static_module --with-http_perl_module --with-pcre=pcre-8.36 --with-zlib=zlib-1.2.8 --with-debug --with-file-aio --with-mail --with-mail_ssl_module --http-client-body-temp-path=/var/tmp/nginx/client_body --http-proxy-temp-path=/var/tmp/nginx/proxy --http-fastcgi-temp-path=/var/tmp/nginx/fastcgi --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi --with-stream --with-ld-opt="-Wl,-E"

编译和安装

    # 执行make编译,make install 安装(可能需要时间稍微长点儿,几分钟到十几分钟,请耐心等待)
    make && make install

    # 测试安装是否成功,能显示版本号就说明没问题
    nginx -v

配置nginx的操作命令和开机自动重启

    # 进入root目录
    cd ~

    # 编辑nginx文件
    vi nginx

    # 文件内容如下,粘贴时注意核对下有没有漏掉,然后保存退出
    # 添加到systemctl初始化目录中
    mv ~/nginx /etc/init.d/nginx && chmod +x /etc/init.d/nginx

    # 删除不必要的文件夹
    rm -rf nginx-1.9.0*

    # 添加开机启动
    chkconfig --add nginx
    chkconfig nginx on

nginx命令配置文件的内容

    #! /bin/bash
    #
    # nginx - this script starts and stops the nginx daemon
    #
    # chkconfig:   - 85 15
    # description:  Nginx is an HTTP(S) server, HTTP(S) reverse \
    #               proxy and IMAP/POP3 proxy server
    #
    # processname: nginx
    # config:      /etc/nginx/nginx.conf
    # pidfile:     /var/run/nginx/nginx.pid

    # Source function library.
    . /etc/rc.d/init.d/functions

    # Source networking configuration.
    . /etc/sysconfig/network

    # Check that networking is up.
    [ "$NETWORKING" = "no" ] && exit 0

    nginx="/usr/sbin/nginx"
    prog=$(basename $nginx)

    NGINX_CONF_FILE="/etc/nginx/nginx.conf"

    [ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx

    lockfile=/var/lock/nginx.lock

    start() {
        [ -x $nginx ] || exit 5
        [ -f $NGINX_CONF_FILE ] || exit 6
        echo -n $"Starting $prog: "
        daemon $nginx -c $NGINX_CONF_FILE
        retval=$?
        echo
        [ $retval -eq 0 ] && touch $lockfile
        return $retval
    }

    stop() {
        echo -n $"Stopping $prog: "
        killproc $prog -QUIT
        retval=$?
        echo
        [ $retval -eq 0 ] && rm -f $lockfile
        return $retval
    }

    restart() {
        configtest || return $?
        stop
        sleep 1
        start
    }

    reload() {
        configtest || return $?
        echo -n $"Reloading $prog: "
        killproc $nginx -HUP
        RETVAL=$?
        echo
    }

    force_reload() {
        restart
    }

    configtest() {
    $nginx -t -c $NGINX_CONF_FILE
    }

    rh_status() {
        status $prog
    }

    rh_status_q() {
        rh_status >/dev/null 2>&1
    }

    case "$1" in
        start)
            rh_status_q && exit 0
            $1
            ;;
        stop)
            rh_status_q || exit 0
            $1
            ;;
        restart|configtest)
            $1
            ;;
        reload)
            rh_status_q || exit 7
            $1
            ;;
        force-reload)
            force_reload
            ;;
        status)
            rh_status
            ;;
        condrestart|try-restart)
            rh_status_q || exit 0
                ;;
        *)
            echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
            exit 2
    esac

测试安装和配置结果

    # nginx 版本
    nginx -v

    # 启动Nginx服务
    systemctl start nginx

    # 停止nginx服务
    systemctl stop nginx

    # 重启Nginx服务
    systemctl restart nginx

    # 服务的状态(可以查看当前nginx服务是否正常,以及报错原因)
    systemctl status nginx

    # 检查nginx.conf配置的合法性(一般用于编辑完nginx.conf文件后,看看编辑是否有问题)
    nginx -t

以上,安装工作完成 =================================================

附:nginx的安装参数详述

配置项说明
./configure
–prefix=/usr/share/nginxNginx安装目录
–sbin-path=/usr/sbin/nginxNginx的sbin目录
–conf-path=/etc/nginx/nginx.confNginx的配置文件
–error-log-path=/var/log/nginx/error.logNginx的错误日志
–http-log-path=/var/log/nginx/access.logNginx的访问日志
–pid-path=/var/run/nginx/nginx.pidNginx的进程ID
–lock-path=/var/lock/nginx.lock
–user=nginxNginx所属用户
–group=nginxNginx所属用户组
–with-http_ssl_moduleNginx的ssl模块
–with-http_spdy_module[Nginx的Google spdy模块
–with-http_dav_module
–with-http_flv_module
–with-http_realip_module
–with-http_addition_module
–with-http_xslt_module
–with-http_stub_status_module
–with-http_sub_module
–with-http_random_index_module
–with-http_degradation_module
–with-http_secure_link_module
–with-http_gzip_static_moduleNginx的gzip压缩模块
–with-http_perl_module
–with-pcre=pcre-8.36pcre的安装目录
–with-zlib=zlib-1.2.8pcre的安装目录
–with-debug允许DEBUG
–with-file-aio
–with-mail
–with-mail_ssl_module
–http-client-body-temp-path=/var/tmp/nginx/client_body
–http-proxy-temp-path=/var/tmp/nginx/proxy
–http-fastcgi-temp-path=/var/tmp/nginx/fastcgi
–http-uwsgi-temp-path=/var/tmp/nginx/uwsgi
–http-scgi-temp-path=/var/tmp/nginx/scgi
–with-streamNginx1.9.0特有的stream模块
–with-ld-opt=”-Wl,-E”gcc的编译优化

+ 参考资料:blog地址https://typecodes.com/web/centos7compilenginx.html

nginx 配置反向代理 Nginx 的主配置文件通常位于 /etc/nginx/nginx.conf 或 /etc/nginx/conf.d/default.conf。你可以直接编辑主配置文件,或者在 /etc/nginx/conf.d/ 目录下创建一个新的配置文件。通过配置 Nginx 反向代理,可以将客户端请求转发到后端服务器,并将响应返回给客户端,同时隐藏后端服务器的真实地址。通过 Nginx 配置反向代理,可以实现请求的转发、负载均衡和安全性增强。可以为反向代理配置 SSL/TLS,以加密客户端与代理之间的通信。 阅读详情

相关推荐

计算机国际会议中的proceedings、conference、paper、workshop、demo:如何区分与选择?

本文详细解析了计算机国际会议中的核心概念:Conference(会议)是学术交流的主舞台,Paper(论文)是研究成果的书面呈现,被接收后收录于Proceedings(会议论文集)。Workshop(研讨会)聚焦前沿细分领域,Demo(演示)则侧重系统与工具的可交互展示。文章为研究者根据自身阶段与工作类型,如何区分与选择投稿目标提供了实用指南。

weixin_29269441的博客 563

Nginx编译参数内容详解

Nginx编译参数内容详解 参考官方文档 http://nginx.org/en/docs/configure.html –with开头的,默认是禁用的(没启动的,想使用的话需要在编译的时候加上) –without开头的,默认是启用的(不想启用此模块时,可以在编译的时候加上这个参数) 编译安装示例(从生产上贴下来的,nginx-1.16) ./configure --prefix=/etc/ngi...

qq_38626895的博客 485

FreeRTOS-Plus-CLI使用笔记

FreeRTOS-Plus-CLI使用笔记 一、简介 详细介绍可参考FreeRTOS-Plus-CLI官网地址入口 FreeRTOS+CLI(Command Line Interface, 命令行接口)提供了一种简单、小型、可扩展且RAM高效的方法,使FreeRTOS应用程序能够处理命令行输入。添加一条指令的步骤如下: 提供一个实现命令功能的函数 将命令映射到该功能函数 注册命令 运行命令解释器 命令行调试接口对于排查分析出现的问题提供了很好的接口,可以通过查看传感器信息判断传感器是否正常,可以查看内置

ApexYuan 6964

nginx安装--with-http_stub_status_module模块

刚开始安装这个模块的时候报错 nginx: [emerg] invalid number of arguments in "stub_status" directive in /usr/local/nginx/conf/nginx.conf:44 通过nginx-V发现没有这个--with-http_stub_status_module这个模块 -with-http_stub_status_...

weixin_43410352的博客 7353

基于STM32F407的定时器以及定时器中断的实现

基于STM32F407的定时器以及定时器中断的实现

weixin_57941207的博客 5232

【人工智能】你知道什么是DeepSeek吗?你有去了解过DeepSeek吗?新手要入门DeepSeek的必经之路——初识DeepSeek

【人工智能】初识DeepSeek 详细介绍DeepSeek以及DeepSeek-R1

蒙奇D索大的博客 3412

深入理解Nginx——编译参数说明

[root@localhost nginx-1.14.0]# ./configure --help => 查看编译配置项 –help 打印帮助信息。 –prefix=PATH 设置软件安装目录路径。 –sbin-path=PATH 设置可执行文件安装目录路径。 –modules-path=PATH 设置模块安装目录路径。 –conf-path=PATH 设置配置文件安装目录路径。 –error-log-path=PATH 设置错误日志文件安装目录路径。 –pid-path=PATH 设置进程文件安

JC的博客 1567

深入解析CAN总线BusOff故障的检测与恢复机制

本文深入解析了CAN总线BusOff故障的检测与恢复机制。BusOff是CAN节点因发送错误过多而被强制离线的一种严重状态。文章详细阐述了其触发原理,即发送错误计数器(TEC)超过255,并重点介绍了通过软件实现的快慢恢复机制,以增强网络在异常情况下的稳定性和韧性。

weixin_29158047的博客 525

nginx编译安装配置选项详解(6)

其余参见nginx官网。

m0_66705547的博客 2203

大模型训练中的AllReduce:从原理到实战,如何优化你的分布式训练效率

本文深入解析了大模型分布式训练的核心通信操作AllReduce,特别是高效的Ring All-Reduce算法原理。文章从实战角度出发,探讨了如何通过通信计算重叠、梯度累积策略、NCCL库调优以及混合并行通信优化等手段,有效降低通信开销,从而显著提升大模型训练效率。

julia4scientist的博客 526

AUTOSAR系统服务篇 - BswM的使用

本文档是对4.0.3版及更高版本的AUTOSAR模式管理应用的介绍。其主要目的是为AUTOSAR的用户和开发人员提供基于示例的AUTOSAR模式管理不同方面的详细概述,这些示例在文中进行了解释。本文中的代码清单共同构成了示例ECU的配置。第2章解释了基础的模式管理概念,例如一般的模式、如何实现模式切换、模式管理者和模式用户的角色等。其次介绍了应用模式管理和基础软件模式管理的依赖关系,两者密切相关。基础软件模式管理器是AUTOSAR R4.0中的中央模式管理模块。它具有很高的可配置性。

IOT2017的博客 848

nginx平滑升级

因为nginx缺少某个模块,或者想升级一下版本,但是nginx上有运载着一些服务,不能挂掉,那么nginx的平滑升级就很关键了!

qq_15247809的博客 1626

基于STC8G1K08A单片机的EC11旋转编码器控制(江科大同款,代码可直接使用)

本文介绍了STC8G系列单片机与EC11旋转编码器的接口实现方案。硬件方面详细说明了EC11编码器的机械结构、电气特性及与单片机的典型连接电路,包括上拉电阻和消抖设计。软件部分重点阐述了状态检测算法,通过状态机和查找表实现方向判断,采用中断方式检测信号变化,并配合定时器进行软件消抖处理。文章还提供了完整的代码实现,包括GPIO初始化、中断服务函数、状态转换逻辑等关键模块,展示了如何通过串口输出验证旋转计数。最后讨论了抗抖动优化、高低速应用场景等实际问题解决方案。该方案在菜单导航、参数调节等场景中具有实用价值

weixin_74013772的博客 324

Nginx 反向代理+负载均衡

Nginx 反向代理+负载均衡

伟庭的博客 1万+

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

nginx实现反向代理及负载均衡

nginx配置反向代理 1.什么是反向代理 通常的代理服务器,只用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中由代理服务器向Internet上的web服务器发起请求,最终达到客户机上网的目的(也就是正向代理)。 而反向代理(Reverse Proxy)方式是指以代理服务器来接受internet

诗雨远方的博客 3万+

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Linux-nginx(安装配置nginx、配置反向代理、Nginx配置负载均衡、动静分离)

PCRE安装:pcre是一个perl库,包括perl兼容的正则表达式库,nginx的http模块使用pcre来解析正则表达式,所以需要安装pcre库。zlib安装:zlib库提供了很多种压缩和解压缩方式nginx使用zlib对http包的内容进行gzip,所以需要安装。OpenSSL安装:penssl是web安全通信的基石,没有openssl,可以说我们的信息都是在裸奔,所以需要安装。当我们访问nginx服务器的时候 直接指向的是 192.168.195.33:8080 这个地址。查看nginx的位置。

weixin_47735032的博客 3936

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Nginx安装配置(Linux),反向代理,负载均衡

nginx安装教程,做反向代理,负载均衡

一个好学的低级程序猿 1560

Nginx - 配置/反向代理/负载均衡

Nginx 安装与启动 / Nginx 配置反向代理 / Nginx 配置负载均衡

chrismurphy的博客 2381

Nginx篇-springCloud配置Gateway+Nginx进行反向代理和负载均衡

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、要做什么?二、怎么做?1.安装并启动nginx1.安装nginx2.启动nginx3.解决80端口被占用4.再次启动nginx2.配置nginx做反向代理一、要干什么一、怎么干1.使用域名进行nginx访问2.使用域名访问2.配置nginx反向代理,将请求转发到商品服务3.重启nginx4.启动商品服务5.验证域名访问3.配置nginx+Gateway做反向代理和负载均衡一、要干什么二、怎么干1.在nginx.conf文件中

Simon的博客 8394

【Nginx】Nginx的反向代理与负载均衡

Nginx是一个高性能的HTTP和反向代理服务器,反向代理服务器是一种位于服务器和客户端之间的代理服务器。客户端将请求发送给反向代理服务器,然后由代理服务器根据一定的规则将请求转发给后端服务器。后端服务器将响应返回给代理服务器,再由代理服务器将响应转发给客户端。Nginx拥有丰富的功能和模块,负载均衡就是其中之一。负载均衡是一种技术,用于在多台服务器之间分配工作负载,以确保高可用性和可靠性。负载均衡将用户的请求分配到多个后端服务器上进行处理,以达到优化资源利用率、提高响应速度和增加系统的可靠性的目的。

Marcos921的博客 1154

nginx的反向代理和负载均衡

Nginx在1.9.0版本开始支持tcp模式的负载均衡,在1.9.13版本开始支持udp协议的负载,udp主要用于 DNS的域名解析,其配置方式和指令和http 代理类似,其基于ngx_stream_proxy_module模块实现tcp 负载,另外基于模块ngx_stream_upstream_module实现后端服务器分组转发、权重分配、状态监测、 调度算法等高级功能。#缓存中用于“键”的内容,默认值:proxy_cache_key $scheme$proxy_host$request_uri;

xujiangyan_的博客 1901

Nginx安装和配置反向代理、负载均衡、动静分离

一 、nginx基本概念 1.nginx是什么? ​ nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。占用内存少,并发性能强,nginx专为性能优化而开发,性能是其最重要的考量。能经受住高负载的考验(支持高达50000个并发) 2.反向代理 ​ (1) 正向代理: 在客户端(浏览器)配置代理服务器,实现代理访问服务器。客户端访问的就是真实的服务...

qq_42641508的博客 793

Linux下Nginx安装及负载均衡配置

本文介绍了Nginx的核心功能与安装配置方法。主要内容包括:1)Nginx的负载均衡算法(轮询、IP哈希等)、反向代理、Web缓存等核心功能;2)在CentOS系统下的详细安装步骤,包括依赖环境配置和主程序编译安装;3)Nginx服务启动与防火墙设置;4)配置文件结构解析,涵盖全局块、events块和http块的关键配置参数。文章通过具体命令和配置示例,帮助读者快速掌握Nginx的部署与基本配置方法,特别对反向代理功能进行了重点说明。

驯龙高手_追风的博客 1614

【Nginx】认识与基本使用 Nginx 实现反向代理、配置负载均衡

Nginx 是一款轻量级的 Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其特点是占有内存少,并发能力强,实际上 Nginx 的并发能力在同类型的网页服务器中表现较好,国内使用 Nginx 的网站有:百度、京东、淘宝、腾讯等。代理就像是我们去购买海外的东西,找了个中间人帮我们去买物品并且带了回来。从系统的角度来说,直接访问就是浏览器的请求直接到了最终的服务器,中间没有经过任何的代理服务器,否则就是通过了代理的形式去访问了服务器。

吞吞吐吐大魔王的博客 3820

Nginx代理支持GRPC的反向代理和负载均衡配置

Nginx代理gRPC反向代理和负载均衡配置 linux版本安装 一、准备和安装 #指定目录安装( /home/yyt/nginxgrpc) mkdir /home/yyt/nginxgrpc cd /home/yyt/nginxgrpc # 1从nginx官网上获取版本号不低于1.13.10的源码包(nginx-1.17.9.tar.gz),本文以1.17.9为例。 wget https://nginx.org/download/nginx-1.17.9.tar.gz # 解压并进入指定的安装目录 t

weixin_45168162的博客 1404

Linux安装、Nginx反向代理、负载均衡学习

本文我们要讲述:1、Linux虚拟机的安装;2、Nginx反向代理服务器。所有的文件我都会放在百度网盘里

攸攸太上的博客 1618
上一篇: nodejs 和 axios 在前后端http交互中的拦截器原理和实现(一)
下一篇: nginx 安装、配置、负载均衡、反向代理<二>
EricLua
博客等级 码龄9年 34粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值