Nginx基础篇-Nginx Proxy实验过程

Nginx基础篇-Nginx Proxy实验过程

本次实验一台采用编译安装得模式具体安装模式如下
源码编译安装nginx

1、安装gcc环境

编译时依赖gcc环境

yum -y install gcc gcc-c++ autoconf automake make

2、安装 pcre

提供nginx支持重写功能

yum -y install pcre pcre-devel

3、安装zlib

zlib 库提供了很多压缩和解压缩的方式,nginx 使用 zlib 对 http 包内容进行 gzip 压缩

yum -y install zlib zlib-devel make libtool

4、安装openssl

安全套接字层密码库,用于通信加密

yum -y install openssl openssl-devel

nginx 安装
手动创建用户和用户组

groupadd nginx
useradd nginx -g nginx -s /sbin/nologin -M

官网下载nginx源码包
wget https://nginx.org/download/nginx-1.23.1.tar.gz

解压

tar -zxvf nginx-1.20.2.tar.gz

cd nginx-1.20.2
#检查平台安装环境
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --user=nginx --group=nginx
参数说明:
–prefix=/usr/local/nginx
#编译安装目录
–user=nginx
#所属用户nginx
–group=nginx
#所属组nginx
–with-http_stub_status_module
#该模块提供nginx的基本状态信息
–with-http_ssl_module

编译源码并安装

make			# 编译
make install  		# 安装

ningx操作
启动服务
/usr/local/nginx/sbin/nginx
重新加载服务
/usr/local/nginx/sbin/nginx -s reload
停止服务
/usr/local/nginx/sbin/nginx -s stop
nginx版本信息查看
/usr/local/nginx/sbin/nginx -V

nginx服务化配置

配置服务文件

vi /lib/systemd/system/nginx.service

配置信息

[Unit]
Description=nginx 
After=network.target 
   
[Service] 
Type=forking 
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx reload
ExecStop=/usr/local/nginx/sbin/nginx quit
PrivateTmp=true 
   
[Install] 
WantedBy=multi-user.target

配置服务化后得启动

systemctl start nginx
systemctl status nginx
systemctl stop nginx
systemctl enable nginx

另外一台位yum安装得方式
yum -y install nginx

实验过程:
1 nginx-1 启动网站(内容)
nginx-1的IP:192.168.159.136
2 nginx-2 启动代理程序
nginx-2的IP:192.168.159.130

    location / {
.....
proxy_pass http://192.168.100.10:80;
proxy_redirect default;

proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_connect_timeout 30;
proxy_send_timeout 60;
proxy_read_timeout 60;

proxy_buffering on;
proxy_buffer_size 32k;
proxy_buffers 4 128k;
proxy_busy_buffers_size 256k;
proxy_max_temp_file_size 256k;
    }

配置含义

proxy_pass :真实服务器
proxy_redirect :如果真实服务器使用的是的真是IP:非默认端口。则改成IP:默认端口。
proxy_set_header:重新定义或者添加发往后端服务器的请求头
proxy_set_header X-Real-IP :启用客户端真实地址(否则日志中显示的是代理在访问网站)
proxy_set_header X-Forwarded-For:记录代理地址

proxy_connect_timeout::后端服务器连接的超时时间_发起三次握手等候响应超时时间
proxy_send_timeout:后端服务器数据回传时间_就是在规定时间之内后端服务器必须传完所有的数据
proxy_read_timeout :nginx接收upstream(上游/真实) server数据超时, 默认60s, 如果连续的60s内没有收到1个字节, 连接关闭。像长连接

proxy_buffering on;开启缓存
proxy_buffer_size:proxy_buffer_size只是响应头的缓冲区
proxy_buffers 4 128k; 内容缓冲区域大小
proxy_busy_buffers_size 256k; 从proxy_buffers划出一部分缓冲区来专门向客户端传送数据的地方
proxy_max_temp_file_size 256k;超大的响应头存储成文件。

使用PC客户端访问nginx-2服务器地址
浏览器中输入http://192.168.159.130
成功访问nginx-1服务器页面

观察nginx-1服务器的日志
192.168.159.130 - - [08/Oct/2022:14:57:46 +0800] “GET /favicon.ico HTTP/1.0” 404 555 “http://192.168.159.130/” “Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36” “192.168.159.1”

192.168.159.130 代理服务器地址
192.168.159.1 客户机地址。

实验成功。nginx代理服务器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
nginx-proxy-manager 是一个基于 Web 界面的 Nginx 反向代理管理工具,可以帮助用户轻松地设置和管理多个网站的反向代理。它基于 Node.js 和 Nginx,可以在 Linux、macOS 和 Windows 等操作系统上运行。 以下是在 Linux 系统上安装 nginx-proxy-manager 的步骤: 1. 安装 Docker 和 Docker Compose nginx-proxy-manager 是基于 Docker 容器技术实现的,因此需要先安装 Docker 和 Docker Compose。 2. 下载 nginx-proxy-manager 在任意文件夹中执行以下命令,下载最新版本的 nginx-proxy-manager: ``` git clone https://github.com/nginx-proxy-manager/nginx-proxy-manager.git ``` 3. 配置 nginx-proxy-manager 进入 nginx-proxy-manager 目录,执行以下命令,生成配置文件: ``` cp app/config.sample.json app/config.json ``` 编辑配置文件,根据需要修改以下配置项: - `db.host`:MySQL 数据库的主机地址,默认为 `127.0.0.1`。 - `db.name`:MySQL 数据库的名称,默认为 `npm`. - `db.user`:MySQL 数据库的用户名,默认为 `npm`. - `db.password`:MySQL 数据库的密码,默认为空。 - `email.from`:邮箱发送邮件的地址,默认为 `noreply@example.com`。 - `email.transport`:发送邮件的方式,默认为 `smtp`。 - `email.smtp`:SMTP 服务器的配置信息。 4. 启动 nginx-proxy-manager 执行以下命令启动 nginx-proxy-manager: ``` docker-compose up -d ``` 这会启动三个 Docker 容器:nginx-proxy-manager、MySQL 数据库和 Let's Encrypt 容器。在容器启动后,可以通过浏览器访问 `http://localhost:81` 进入 nginx-proxy-manager 的 Web 界面。 5. 配置 nginx-proxy-manager 首次进入 nginx-proxy-manager 的 Web 界面后,需要先设置管理员账号和邮箱,然后就可以开始配置反向代理和 SSL 证书了。 以上就是在 Linux 系统上安装 nginx-proxy-manager 的步骤,其他操作系统的安装方法类似。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值