CentOS 7.6环境下Nginx1.23.3下载安装配置使用教程

这篇具有很好参考价值的文章主要介绍了CentOS 7.6环境下Nginx1.23.3下载安装配置使用教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、前言

这篇文章主要介绍了CentOS 7.6环境下Nginx下载安装配置使用教程,学习nginx的朋友可以参考一下

二、下载

使用如下命令进行下载

wget http://nginx.org/download/nginx-1.23.3.tar.gz

三、安装nginx需要的环境库

项目首先我们需要安装gcc、gcc-c++、zlib、pcre 和openssl。

判断?包名是否安装

rpm -q ?包名

3.1 安装gcc gcc-c++

yum install -y gcc gcc-c++

3.2 下载安装pcre

 cd /usr/local/
 wget http://downloads.sourceforge.net/project/pcre/pcre/8.45/pcre-8.45.tar.gz
 tar -zxvf pcre-8.45.tar.gz
 cd pcre-8.45
 ./configure
 make && make install

3.3 下载安装openssl

 cd /usr/local/
 wget https://www.openssl.org/source/openssl-1.1.1t.tar.gz --no-check-certificate
 tar -zxvf openssl-1.1.1t.tar.gz
 cd openssl-1.1.1t
 ./config
 make && make install

注:wget https://www.openssl.org/source/openssl-1.1.1t.tar.gz 后面记得一定加上–no-check-certificate,不然要报错。显示www.openssl.org上颁发的证书已经过期无法验证

3.4 下载安装zlib

 cd /usr/local/
 wget http://zlib.net/zlib-1.2.13.tar.gz
 tar -zxvf zlib-1.2.13.tar.gz
 cd zlib-1.2.13
 ./configure
 make && make install

四、安装nginx

4.1安装配置

 cd /usr/local/
wget http://nginx.org/download/nginx-1.23.3.tar.gz
 tar -zxvf nginx-1.23.3.tar.gz -C /usr/local/
 cd nginx-1.25.2
 ./configure  --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/pcre-8.45  --with-openssl=/usr/local/openssh
 make && make install

4.2创建ssl的软链接,不然启动nginx会报错

ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1

五、启动Nginx

5.1 启动Nginx

/usr/local/nginx/sbin/nginx

测试一下nginx,从别台机器访问一下服务器的IP,出现“Welcome to nginx!”页面就说明成功了;如果访问不到页面但是可以ping通服务器的话可能是开启了防火墙,关闭就行。

5.2 关闭防火墙

systemctl stop firewalld.service

5.3 关闭防火墙开机自启

systemctl disable firewalld.service

5.4 停止nginx服务

/usr/local/nginx/sbin/nginx –s stop

5.5 强制关闭nginx服务

pkill nginx

5.6 配置nginx开机自启动

在/usr/lib/systemd/system路径下创建一个nginx的服务名称,这边设置为nginx.service

cd /usr/lib/systemd/system
vim nginx.service

配置以下内容

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid  #更换成自己安装nginx的路径
ExecStartPre=/usr/local/nginx/sbin/nginx -t #更换成自己安装nginx的路径
ExecStart=/usr/local/nginx/sbin/nginx #更换成自己安装nginx的路径
ExecReload=/usr/local/nginx/sbin/nginx -s reload #更换成自己安装nginx的路径
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

配置完保存即可。

配置开机自启动

systemctl enable nginx.service

查看是否设置成功

systemctl list-unit-files | grep nginx
启动:systemctl start nginx.service
关闭:systemctl stop nginx.service

六、介绍一下Nginx的配置

6.1 nginx.conf配置文件介绍

#nginx配置
#user  nobody;
worker_processes  1;    #服务器并发处理服务关键配置

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;   #最大连接数为 1024.
}

http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    tcp_nopush     on;
    keepalive_timeout  65;

    #gzip  on;  #http头压缩
    
    #正向代理配置
    server {    
        listen       8080;  # 代理监听端口
        resolver 114.114.114.114; #代理DNS配置
        
        #charset koi8-r;

        access_log  /home/lich/logs/fproxy.access.log;  #accesslog输出路径
        error_log /home/lich/logs/fproxy.error.log;     #errorlog输出路径
        
        location / {
           
            proxy_pass $scheme://$host$request_uri;     # 配置正向代理参数
            proxy_set_header Host $http_host;           # 解决如果URL中带"."后Nginx 503错误

            proxy_buffers 256 4k;   # 配置缓存大小
            proxy_max_temp_file_size 0;     # 关闭磁盘缓存读写减少I/O
            proxy_connect_timeout 30;       # 代理连接超时时间

            # 配置代理服务器HTTP状态缓存时间
            proxy_cache_valid 200 302 10m;
            proxy_cache_valid 301 1h;
            proxy_cache_valid any 1m;
        }
    }

    
    #反向代理配置
    server {
        listen       80;
        server_name  test.test.com;   #代理转发域名配置

        access_log  /home/lich/logs/rproxy.access.log;
        error_log /home/lich/logs/rproxy.error.log;

        location / {
            proxy_pass http://172.16.113.1:8001;    #代理到后段实际应用服务器地址
            index  index.html index.htm index.jsp;
        }

        #error_page  404              /404.html;
        # redirect server error pages to the static page /50x.html
        
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}


6.2 监听配置用法

listen *:80 | *:8080        #监听所有80端口和8080端口
listen IP_address:port     #监听指定的地址和端口号
listen IP_address          #监听指定ip地址所有端口
listen port                 #监听该端口的所有IP连接

6.3 server_name:基于名称的虚拟主机配置

语法格式如下:

 server_name   name ...;

对于name 来说,可以只有一个名称,也可以有多个名称,中间用空格隔开。而每个名字由两段或者三段组成,每段之间用“.”隔开。

server_name test.com www.test.com

可以使用通配符“*”,但通配符只能用在由三段字符组成的首段或者尾端,或者由两端字符组成的尾端。

server_name *.test.com www.test.*

还可以使用正则表达式,用“~”作为正则表达式字符串的开始标记。

server_name ~^www\d+\.test\.com$;

6.4 server_name:基于IP地址的虚拟主机配置

#语法结构和基于域名匹配一样,而且不需要考虑通配符和正则表达式的问题。

server_name 192.168.1.1

6.5 proxy_pass

该指令用于设置被代理服务器的地址。可以是主机名称、IP地址加端口号的形式

# proxy_pass URL;

# URL 为被代理服务器的地址,可以包含传输协议、主机名称或IP地址加端口号,URI等。
proxy_pass  http://www.test.com/uri;

6.6 index

该指令用于设置网站的默认首页。

#index  filename ...;
#后面的文件名称可以有多个,中间用空格隔开。
index  index.html index.jsp;

七、 ngxin负载均衡

7.1 轮询算法负载均衡

upstream OrdinaryPolling {
    server 172.16.113.1:8081;
    server 172.16.113.1:8082;
}
server {
listen       80; 
server_name  test.test.com;

access_log  /home/lich/logs/rproxy_slb.access.log;
error_log /home/lich/logs/rproxy_slb.error.log;

location / {
             proxy_pass http://OrdinaryPolling;
             index  index.html index.htm index.jsp;
             # deny ip
             # allow ip
         
        }
}

7.2 基于比例加权轮询负载均衡


upstream OrdinaryPolling {
    server 172.16.113.1:8081 weight=2;
    server 172.16.113.1:8082 weight=5;
}
server {
listen       80; 
server_name  test.test.com;

access_log  /home/lich/logs/rproxy_slb.access.log;
error_log /home/lich/logs/rproxy_slb.error.log;


location / {
             proxy_pass http://OrdinaryPolling;
             # index  index.html index.htm index.jsp;
             # deny ip
             # allow ip
         
        }
}



7.3 基于IP路由负载均衡

在 upstream 指令块中增加了ip_hash 指令。该指令就是告诉 nginx 服务器,同一个 IP 地址客户端发送的请求都将分发到同一个 Tomcat 服务器进行处理。

upstream OrdinaryPolling {
    server 172.16.113.1:8081 weight=2;
    server 172.16.113.1:8082 weight=5;
    ip_hash;
}
server {
listen       80; 
server_name  test.test.com;
access_log  /home/lich/logs/rproxy_slb.access.log;
error_log /home/lich/logs/rproxy_slb.error.log;
location / {
             proxy_pass http://OrdinaryPolling;
             # index  index.html index.htm index.jsp;
             # deny ip
             # allow ip
        }
}

7.4 基于服务器响应时间负载均衡

根据服务器处理请求的时间来进行负载,处理请求越快,也就是响应时间越短的优先分配。文章来源地址https://www.toymoban.com/news/detail-690611.html

upstream OrdinaryPolling {
    server 172.16.113.1:8081 weight=2;
    server 172.16.113.1:8082 weight=5;
    fair;
}
server {
listen       80; 
server_name  test.test.com;

access_log  /home/lich/logs/rproxy_slb.access.log;
error_log /home/lich/logs/rproxy_slb.error.log;


location / {
             proxy_pass http://OrdinaryPolling;
             # index  index.html index.htm index.jsp;
             # deny ip
             # allow ip
         
        }
}

到了这里,关于CentOS 7.6环境下Nginx1.23.3下载安装配置使用教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Centos7.9服务器编译安装Nginx1.24.0和php8.3

    服务器nginx原版本有安全漏洞,需要升级,由于原始是yum源安装,通过yum直接升级,无法正常升级完成,故而需要卸载yum源,重新编译安装。 1、查看原来nginx版本,ps查看原来nginx进程,运行状态: 查看nginx版本号为1.20:

    2024年02月20日
    浏览(39)
  • ubuntu22.04安装使用 protobuf 23.3静态库

    https://github.com/protocolbuffers/protobuf/ 下载最新的release版本,23.3 必须需要依赖的第三方库 abseil,utf8_range mkdir build cd build cmake -DCMAKE_BUILD_TYPE=DEBUG  -DCMAKE_INSTALL_PREFIX=/usr/local -Dprotobuf_BUILD_SHARED_LIBS=OFF -Dprotobuf_WITH_ZLIB=OFF -Dprotobuf_BUILD_TESTS=OFF .. make sudo make install 或直接修改CmakeList.t

    2024年02月11日
    浏览(35)
  • (Linux)Centos7.*版本安装配置Java环境、Tomcat、Nginx并打包部署SSM框架web系统

    目录 一、准备软件与安装包 (一)、必须的软件 1、点击下载Xshell 2、点击下载FileZilla (二)、准备安装包 1、点击下载JDK1.8Linux版本 2、点击下载Nginx 3、点击下载Tomcat   二、关于FileZilla软件的使用说明 (一)、FileZilla软件的打开和说明 (二)、配置服务器地址去连接服务器  三、X

    2023年04月25日
    浏览(49)
  • linux nginx1.24.0安装

    nginx高性能web服务器,可作为一般http应用转发,也可以做mySql、redis、zk、rabbit MQ等tcp数据流转发。 常用Linux服务系统centos和ububtu 只是安装命令不同 yum/apt-get,流程和依赖包是一样的安装方式 1、下载nginx安装包tar.gz官方下载地址 wget https://nginx.p2hp.com/download/nginx-1.24.0.tar.gz 2、安

    2024年01月19日
    浏览(33)
  • Ubuntu 22.04 安装nginx1.24.0

    安装编译Nginx所需的依赖项: 下载Nginx 1.24.0源代码包: 解压源代码包: 配置编译选项和模块: 编译源代码: 安装已编译的二进制文件和相关文件: 验证安装是否成功:

    2024年02月15日
    浏览(32)
  • OpenEuler22.03源码编译安装nginx1.24.0

    操作系统版本:OpenEuler22.03 SP2 LTS Nginx版本:1.24.0 安装位置:/app/nginx Selinux配置:关闭或设置为permissive 修改nginx运行用户为root: 设置nginx开机自启: nginx.service内容: [Unit] Description=nginx After=network.target [Service] Type=forking ExecStart=/app/nginx/sbin/nginx -c /app/nginx/conf/nginx.conf ExecReloa

    2024年02月04日
    浏览(38)
  • CentOS 7.6 配置静态IP

    环境 CentOS 7 准备工作 按win键+R打开面板,输入cmd 输入ipconfig查看物理机ip地址   使用ifconfig查看网卡配置编号 我这里是已经配置好了的,网卡可以看到是ens160 输入下面的代码进入vim 编辑器修改网卡配置 打开后修改以下几项就可以了(IP,掩码,网关,DNS根据自己的IP定义)

    2024年02月05日
    浏览(32)
  • 构建基于RHEL9系列(CentOS9,AlmaLinux9,RockyLinux9等)的Nginx1.24.0的RPM包

    本文适用:rhel9系列,或同类系统(CentOS9,AlmaLinux9,RockyLinux9等) 文档形成时期:2023年 因系统版本不同,构建部署应略有差异,但本文未做细分,对稍有经验者应不存在明显障碍。 因软件世界之复杂和个人能力之限,难免疏漏和错误,欢迎指正。 yum install rpmdevtools #创建目录 r

    2024年01月23日
    浏览(36)
  • Centos 7.6 安装mongodb

    以下是在CentOS 7.6上安装MongoDB的步骤: 打开终端并以root用户身份登录系统。 创建一个新的MongoDB存储库文件 /etc/yum.repos.d/mongodb-org-4.4.repo 并编辑它。 在编辑器中,添加下面的内容到文件中并保存: 运行以下命令以安装MongoDB。 安装完成后,启动MongoDB服务并设置它随系统启动

    2024年02月11日
    浏览(27)
  • Docker-Compose编排Nginx1.25.1+PHP7.4.33+Redis7.0.11环境

    实践说明:基于RHEL7(CentOS7.9)部署docker环境(23.0.1、24.0.2),编排也可应用于RHEL7-9(如AlmaLinux9.1),但因为docker的特性,适用场景是不限于此的。 文档形成时期:2017-2023年 因系统或软件版本不同,构建部署可能略有差异,但本文未做细分,对稍有经验者应不存在明显障碍。 因软件

    2024年01月22日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包