从零开始配置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!
热门推荐
支链氨基酸(BCAA)与增肌
贴片电阻与贴片电容规格、封装、尺寸及功率详解
10首生活气息满满的古诗词,人间烟火气,平淡最欢喜
糖果储存秘籍,保持原始口感的小窍门
如何主动发起话题:与陌生人聊天的三个实用技巧
新希望:污染问题严重信披不完整,连续四年不分红278亿短债压顶
深度解析美国公司法人的责任:了解法律背后的故事
契税退税流程及所需资料解析
CSS3(媒体查询、媒体类型、媒体特性、媒体运算符、BFC)
科学使用布洛芬混悬液,告别用药误区
床架尺寸选择指南:教你完美搭配床垫和床架
述情障碍:说不出来的情绪,要先打开内心结界
豪门不同命:皇马1-2被逆转 曼城3-1进8强 国米遭绝平 巴黎10连胜
大学生做家教的好处和坏处
美企头部CEO盛赞DeepSeek?为何说其实是精心设计的“危机公关”?
乳腺癌复查必须一年一次吗?《柳叶刀》:这部分女性可安全延长检查周期
什么是终身寿险的现金价值
《真爱遗事》:在爱恨交织中,探寻中国式浪漫的千年蜕变
如何制定一个高效的实施计划时间表?
如何让植物更健康?8个必学修剪技巧
光纤收发器全红指示灯代表什么?如何解决光纤收发器故障?
电车底盘革新:为何能迅速迎头赶上?行业揭秘,原因令人信服!
鼻子干燥结痂怎么办?原因分析与治疗建议
C-mount和CS-mount工业相机镜头:法兰焦距差异与兼容性详解
游长江三峡最佳旅游时间和路线图
浑身冰凉是什么原因引起的
特写:高铁上遇见“非遗”
怎么用Excel电子表格做账
易经风水学:传统智慧与现代应用的桥梁
拆解修破壁机刀片的步骤与技巧(掌握正确的操作方式)