从零开始配置Nginx,各种配置实例
创作时间:
作者:
@小白创作中心
从零开始配置Nginx,各种配置实例
引用
CSDN
1.
https://blog.csdn.net/zgt_certificate/article/details/140337457
本文通过三个具体的案例,详细介绍了如何使用Nginx配置静态网站、反向代理和负载均衡。每个案例都包含了详细的步骤和代码示例,适合有一定基础的IT技术人员阅读。
案例1:通过Nginx搭建静态网站,基于IP过滤设置用户访问限制
实验环境
虚拟机server1作为Nginx服务器。
步骤
Step 1:修改配置文件
在server1中:
cd /usr/local/nginx
cd conf/
vim nginx.conf
Step 2:编辑Nginx配置文件
打开 nginx.conf
文件,添加以下配置:
server {
listen 80;
server_name server1;
location / {
autoindex on;
allow 192.168.1.0/24; # 允许此IP段访问
deny all; # 默认拒绝所有访问
if ($remote_addr !~ "192.168.1.") {
return 403; # 如果IP不在允许的范围内,返回403
}
}
error_page 403 404 500 502 503 504 /50x.html;
}
listen 80;
:监听80端口。server_name server1;
:指定服务器名为server1
。location / {}
:配置根路径的访问规则。autoindex on;
:开启目录浏览。allow 192.168.1.0/24;
:允许192.168.1.0/24
网段的IP访问。deny all;
:拒绝所有其他IP访问。if ($remote_addr !~ "192.168.1.") { return 403; }
:如果请求的IP不匹配192.168.1.
,则返回403错误。error_page 403 404 500 502 503 504 /50x.html;
:配置错误页面。
Step 3:重启Nginx服务
nginx -s reload
案例2:通过Nginx实现反向代理,访问后端web服务
实验环境
需要虚拟机server1和server2。server1作为Nginx服务器,server2安装Apache服务,server3作为客户端。
步骤
Step 1:修改配置文件
在server1中:
cd /usr/local/nginx
cd conf/
vim nginx.conf
Step 2:编辑Nginx配置文件
打开 nginx.conf
文件,添加以下配置:
http {
include mime.types;
default_type application/octet-stream;
upstream backend {
server 192.168.1.2:80; # 定义后端Apache服务器地址
}
server {
listen 80;
server_name server1;
location / {
proxy_pass http://backend; # 反向代理到后端服务器
}
}
}
upstream backend {}
:定义一个名为backend
的后端服务器组。server 192.168.1.2:80;
:指定后端服务器的地址和端口。proxy_pass http://backend;
:将请求转发到定义的backend
服务器组。
Step 3:在server2中安装并配置Apache
yum install httpd -y
echo "Hello from Apache!" > /var/www/html/index.html
systemctl start httpd
systemctl enable httpd
Step 4:在server3中测试
curl http://server1
预期输出:
Hello from Apache!
案例3:通过Nginx实现web服务的负载均衡
实验环境
server1作为Nginx服务器,server2和server3作为Apache服务器。
步骤
Step 1:修改配置文件
在server1中:
cd /usr/local/nginx
cd conf/
vim nginx.conf
Step 2:编辑Nginx配置文件
打开 nginx.conf
文件,添加以下配置:
http {
include mime.types;
default_type application/octet-stream;
upstream backend {
server 192.168.1.2:80 weight=3; # server2权重为3
server 192.168.1.3:80 weight=1; # server3权重为1
}
server {
listen 80;
server_name server1;
location / {
proxy_pass http://backend; # 负载均衡到后端服务器组
}
}
}
upstream backend {}
:定义后端服务器组。server 192.168.1.2:80 weight=3;
:指定192.168.1.2
的权重为3。server 192.168.1.3:80 weight=1;
:指定192.168.1.3
的权重为1。proxy_pass http://backend;
:将请求负载均衡到backend
服务器组。
Step 3:在server2和server3中安装并配置Apache
yum install httpd -y
echo "Hello from Apache on server2!" > /var/www/html/index.html
systemctl start httpd
systemctl enable httpd
# 在server3中:
yum install httpd -y
echo "Hello from Apache on server3!" > /var/www/html/index.html
systemctl start httpd
systemctl enable httpd
Step 4:在server3中测试
curl http://server1
预期输出会交替显示:
Hello from Apache on server2!
Hello from Apache on server3!
热门推荐
国有企业的人事部门设置是怎样的?
下后槽牙痛的原因及治疗建议
司法拍卖:探索法院处置财产的公开透明之路
7个提升心理和情绪健康的小贴士
二战步兵的“开罐器”—二战单兵反坦克手榴弹
13画吉利字大全:寓意美好,寄托父母殷切期望
化验员岗位职责 化验员是做什么的
如何为短剧制定营销推广计划
提高宠物犬寿命的窍门(以健康、饮食和运动为基础)
探寻香积寺:千年古刹的传奇与魅力
如何消除腿部肌肉酸痛
别再误会!这些主食堪称血糖 “稳定剂”
外伤后和骨折术后一定要定期复查吗
八首古诗词,写尽人间思念之情
气候变化如何影响非洲体育?
电机功率与电动机功率计算公式
工业设计专业代码是什么?
出境更方便了!杭州机场出发,试试电子登机牌
中山两日游全攻略:追寻伟人足迹,感受岭南文化
如何明确企业的人事管理职责?
三方协议有法律效力吗?
政策性银行是什么意思
藿香正气水不能和什么药一起吃
复合菌剂显著促进好氧堆肥中有害生物污染物消减
打弹珠游戏机怎么制作
如何降低跑步时的垂直振幅?
唐朝宦官李进忠:权力与影响的象征
下眼皮跳不停?科学应对与快速有效治疗方案
Excel设置A4纸打印区域的详细步骤
如何把JSON字符串返回给前端