nginx安装文档(非root用户)

本文档详细介绍了非root用户安装Nginx的过程,包括停用selinux、创建中间件用户、关闭防火墙、下载安装依赖、配置编译及启动服务。此外,还涵盖了Nginx作为文件服务器、反向代理和负载均衡的配置方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

nginx安装文档

一. 文档介绍

  • 文档内容目前并不全面,更多内容会在后续更新
  • 文档nginx部分构成 ---- 基础配置篇 和 场景应用篇
    • 基础配置篇:nginx 等相关介质准备及环境配置
    • 场景应用篇:nginx 在生产中常见的使用方法

二. nginx 简介

1. nginx 简介
  • Nginx (“engine x”) 是一个高性能的 HTTP反向代理 服务器,特点是占有内存少,并发能力强。

  • Nginx 即可作为静态页面的 web 服务器,同时还支持 CGI 协议的动态语言,如 php。但是不支持 java。Java 程序只能通过与 tomcat 配合完成

2. 服务器相关概念介绍

1.1 正向代理

说明:当客户端无法直接访问网站时,可以使符合条件的代理服务器代替我们 发送请求接收内容。它还有一个好处是隐藏了客户端的真实ip

1.2 示意图
在这里插入图片描述
2. 反向代理

2.1 说明:用户对服务器提供的服务是无感知的,客户端将请求发送给代理服务器,代理服务器将请求发送给后台某一台服务器处理。他还有一个好处是隐藏了服务器的真实ip

2.2 示意图
在这里插入图片描述

基础安装篇

一. 环境准备

系统配置

配置参数
系统centos7.6
位数64
cpu个数4
1. 停用 selinux

说明:selinuxredhat/centos 中提供访问控制安全策略的机制,若开启可能会影响到服务器的使用,建议关闭

1. 查看 selinux 状态

getenforce

若显示 为 Enforcing,则进行关闭

**2. ** 关闭 selinux

2.1 打开文件 /etc/

vi /etc/selinux/config 

2.2 修改配置

说明:将 SELINUX=enforcing 修改为 SELINUX=disabled

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=enforcing #将此处修改为 SELINUX=disabled
# SELINUXTYPE= can take one of three values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

3. 重启计算机,使配置生效

重启命令

init 6

**4. ** 查看 selinux 状态

getenforce	

若为 Disabled 即已生效

2. 创建中间件用户

说明:中间件用户用来管理 nginx 服务器

1. 创建 middleware

groupadd -g 402  middleware

2. 创建 middleware 用户

useradd -u 402 -g  middleware -d /middleware  middleware

3. 修改 middleare 密码

passwd middleware
3. 赋予中间件用户 sudo 权限

1. 赋予文件可写权限

chmod +w /etc/sudoers

2. 打开文件

vi /etc/sudoers

3. 在只读模式中输入 /root 查找关键字

/root

4. 找到代码

root    ALL=(ALL)       ALL

5. 在它下方加入以下代码,然后保存退出

was     ALL=(ALL)       ALL

6. 恢复文件默认权限

chmod -w /etc/sudoers
4. 关闭防火墙

说明:为了方便,直接关闭防火墙

**1. ** 查看防火墙状态

systemctl status firewalld.service

Activeactive ,则为开启状态
在这里插入图片描述

2. 关闭防火墙(重启后失效)

systemctl stop firewalld.service

3. 永久关闭防火墙(重启后生效)

systemctl disable firewalld.service

二. 素材准备

注意: 从此步开始均用 middleware 用户操作

1. 下载 nginx

1. 创建 software 目录,用来存放素材

mkdir ~/software

**2. ** 安装 wget , 用于下载 nginx 使用

sudo yum install wget -y

3.nginx 下载到 ~/software

wget -P ~/software/ https://nginx.org/download/nginx-1.21.1.tar.gz
2. 下载依赖

**1. ** 安装

wget -P /middleware/software/  http://zlib.net/zlib-1.2.11.tar.gz
wget -P /middleware/software/   https://ftp.pcre.org/pub/pcre/pcre-8.43.tar.gz
wget -P /middleware/software/   https://www.openssl.org/source/openssl-1.0.2s.tar.gz
wget -P /middleware/software/  http://nginx.org/download/nginx-1.16.1.tar.gz

2. 依赖包解释

zlib库 : gzip 模块所需

pcre库 : rewrite 模块所需

openssl库: ssl 功能所需

gcc编译所需

3. 官网下载最新依赖

说明:yum 源中若没有上述库或者库版本不符,可到官网自行下载

prce: http://www.pcre.org/

openssl:http://www.openssl.org/source/

zlib:http://www.zlib.net/

三. nginx 安装

1.介质解压于查看

1. 将压缩包解压到指定目录

tar -xvf ~/software/nginx-1.16.1.tar.gz 
tar -xvf ~/software/openssl-1.0.2s.tar.gz
tar -xvf ~/software/pcre-8.43.tar.gz
tar -xvf ~/software/zlib-1.2.11.tar.gz

2. 查看解压后的目录

说明:此命令只显示当文件夹中的目录文件

find /middleware/software/ -maxdepth 1  -type d | awk  '{ if (NR > 1){print $1}}'

3. 显示

/middleware/software/nginx-1.16.1
/middleware/software/openssl-1.0.2s
/middleware/software/pcre-8.43
/middleware/software/zlib-1.2.11
2. 配置编译环境

1. 进入 /middleware/software/nginx-1.16.1 目录

cd /middleware/software/nginx-1.16.1

2. 配置编译环境

./configure 
--prefix=/middleware/nginx 
--with-pcre=/middleware/software/pcre-8.43/ 
--with-zlib=/middleware/software/zlib-1.2.11/  
--with-openssl=/middleware/software/openssl-1.0.2s/ 
--user=middleware 
--group=middleware     
--with-file-aio     
--with-http_v2_module     
--with-http_ssl_module     
--with-http_realip_module     
--with-http_sub_module     
--with-http_gzip_static_module     
--with-http_stub_status_module

3. 参数说明

4. 其他参数(了解)

3. 编译和安装

1. 编译后安装

make && make install
4. 修改 nginx 虚拟主机 端口号

说明:虚拟主机 概念后续会讲解,暂且将它认为是 nginx 启动服务后的默认端口号(即80端口)。修改原因是非root 用户没有权限管理 1024 以下的端口号

1. 打开 nginx 配置文件

vim /middleware/nginx/conf/nginx.conf

2. 将端口改为 8080

在这里插入图片描述

5. 启动 nginx 服务

1. 启动命令

/middleware/nginx/sbin/nginx

2. 查看 nginx 进程

ps -ef | grep nginx

3. 启动成功显示

middlew+  59265      1  0 14:10 ?        00:00:00 nginx: master process /middleware/nginx/sbin/nginx
middlew+  59266  59265  0 14:10 ?        00:00:00 nginx: worker process

4. 访问 nginx 服务器

地址:ip:8080

5. nginx 首页显示

在这里插入图片描述

场景应用篇

一. 搭建 nginx 文件服务器

1.设置服务器访问用户及密码

说明:为了增加服务器的安全性,我们给其设置了密码。设置密码需要借助第三方 **httpd-tools ** 工具

1. 安装 httpd-tools

sudo yum install -y httpd-tools

2. 创建存放密码文件目录

 mkdir -p /middleware/conf/nginx_passwd

3. 生成用户 middleware 的密码文件

htpasswd  -c /middleware/conf/nginx_passwd/passwd.db middleware

注意:此步会提示输入密码,此密码即为文件服务器登录密码

2. 文件配置

1. 打开 /middleware/nginx/conf/nginx.conf 文件

vim /middleware/nginx/conf/nginx.conf

2. 重载配置文件

说明:nginx有 “热” 的概念。简单理解为 nginx可以在不停止服务的情况下重载配置文件,所以此处直接重载即可

重载命令

/middleware/nginx/sbin/nginx -s reload
3. 访问文件服务器

1. 服务器地址

ip:8080

2. 服务器页面显示

说明:访问服务器时会要求输入用户密码,即之前所设置的
在这里插入图片描述

二. nginx反向代理

1. 反向代理实现过程

1. 反向代理示意图

请求
回复
请求
回复
浏览器
nginx代理服务器
tomcat服务器
反向代理示意图

2. 图例说明

我们用 浏览器 访问 nginx代理服务器 ,让他替我们向 tomcat服务器 发送请求,并将收到的内容回复给我们

2. 服务器准备
服务器ip服务器类型端口
192.168.163.181nginx 反向代理服务器8080
192.168.163.171tomcat 服务器8081
3. tomcat 安装

详情见 tomcat 安装文档

Tomcat 实施文档.pdf

4. nginx 配置

1. 打开 nginx 配置文件

vim /middleware/nginx/conf/nginx.conf

2. 修改配置文件
在这里插入图片描述

3. 重载配置文件

/middleware/nginx/sbin/nginx -s reload

4. 访问 nginx 服务器

nginx服务器地址:http://192.168.163.181:8080

5. 返回页面
在这里插入图片描述

三. 负载均衡配置

1. 负载均衡实现

1. 负载均衡示意图

请求
回复
请求
回复
请求
回复
浏览器
nginx服务器--负载均衡
tomcat1
tomcat2
负载均衡示意图

2. 图例说明

浏览器nginx服务器 发送请求时,nginx服务器 会根据 负载均衡 策略 将请求分给 tomcat1tomcat2 ,并将接收到的消息返回给浏览器

2. 服务器准备
服务器ip服务器类型端口
192.168.163.181nginx 反向代理服务器8080
192.168.163.172tomcat18081
192.168.163.172tomcat28082
3. tomcat安装

/middleware 下安装两个tomcat应用,安装目录分别命名为 tomcat1tomcat2,端口分别为 80818082

4. nginx 配置

1. 配置文件内容如下

在这里插入图片描述

2. 验证是否生效

轮流停止 tomcat 服务,然后访问 nginx 地址即可验证

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值