Nginx反向代理
1.代理
正向代理:网络代理(代理客户端访问外网)

反向代理:用于公司集群架构,代理服务端

2.正向代理与反向代理的区别
1.形式上的服务“对象”不一样
2.正向代理的对象是客户端,为客户端服务
3.反向代理的对象是服务端,为服务端服务
3.代理的作用
1.可以代理后端语言的服务(PHP,Python)
2.国外服务器代理国内服务器,方便国外用户上网

4.反向代理常用模块
反向代理模式 |
nginx配置模块 |
http、websocket、https |
ngx_http_proxy_module |
fastcgi |
ngx_http_fastcgi_module |
uwsgi |
ngx_http_uwsgi_module |
grpc |
ngx_http_v2_module |
Nginx反向代理配置
环境准备
主机名 |
WanIP |
LanIP |
角色 |
应用 |
web01 |
10.0.0.7 |
172.16.1.7 |
web网站 |
nginx、php、wordpress |
lb01 |
10.0.0.5 |
172.16.1.5 |
反向代理服务器 |
nginx |
db01 |
10.0.0.51 |
182.16.1.51 |
数据库 |
MariaDB |
安装LNMP环境
1.先添加nginx和php的仓库
[root@web01 ~]
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
[root@web01 ~]
[php-webtatic]
name = PHP Repository
baseurl = http://us-east.repo.webtatic.com/yum/el7/x86_64/
gpgcheck = 0
2.安装nginx和php
yum -y install php71w php71w-cli php71w-common php71w-devel php71w-embedded php71w-gd php71w-mcrypt php71w-mbstring php71w-pdo php71w-xml php71w-fpm php71w-mysqlnd php71w-opcache php71w-pecl-memcached php71w-pecl-redis php71w-pecl-mongodb nginx
3.修改nginx和php的配置文件使它们统一用户
[root@web01 ~]
user www;
[root@web01 ~]
user = www
group = www
4.创建www用户
useradd www -s /sbin/nologin -M
5.编辑nginx配置文件
[root@web01 ~]
server{
listen 80;
server_name blog.jl.com;
root /code/wordpress;
index index.php index.html;
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
}
6.创建站点目录
[root@web01 ~]
7.下载wordpress到站点目录中
[root@web01 /code]
8.修改站点目录的属主
[root@web01 /code]
9.启动nginx和php并加入开机自启
[root@web01 /code]
[root@web01 /code]
安装数据库(db01)
1.安装数据库
[root@db01 ~]
2.启动数据库
[root@db01 ~]
3.给数据库添加密码
[root@db01 ~]
4.登录数据库
[root@db01 ~]
5.创建wordpress表
MariaDB [(none)]> create database wordpress;
6.创建用户
MariaDB [(none)]> grant all on wordpress.* to wp_user@'172.16.1.%' identified by '123';
访问网站
1.在windows上解析域名
10.0.0.7 blog.jl.com
2.在浏览器访问域名




nginx做代理服务器(lb01)
1.安装nginx
[root@lb01 ~]
2.编写nginx配置文件
[root@lb01 ~]
server{
listen 80;
server_name blog.jl.com;
location /{
proxy_pass http://172.16.1.7:80;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_connect_timeout 60s;
proxy_read_timeout 60s;
proxy_send_timeout 60s;
proxy_buffering on;
proxy_buffer_size 32k;
proxy_buffers 4 128k;
}
}
3.访问网站
4.在web01机器上查看日志

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异