介绍高性能的HTTP和反向代理服务器Nginx

Date: 2025.03.08 16:17:55 author: lijianzhan

Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的。

Nginx是一款轻量级的Web 服务器/反向代理服务器以及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是轻量级、内存占用少、并发能力强等,同时支持热部署和模块扩展。并且由于它的内存占用少,启动极快,高并发能力强,在互联网项目中广泛应用。

关于Nginx思维导图

如何在不同操作系统上安装和配置Nginx?

  1. Windows:
bash 复制代码
Windows:
下载适用于Windows的Nginx安装包。
解压下载的压缩包到一个合适的目录(如:C:\nginx)。
打开命令提示符,切换到Nginx目录,执行start nginx命令启动Nginx服务器。
打开浏览器,访问http://localhost,如果看到Nginx的欢迎页面,说明安装成功。
  1. Linux:
bash 复制代码
#打开终端,执行下面的命令更新软件包并安装Nginx
sudo dnf install epel-release
sudo dnf install nginx -y
#启动Nginx服务
sudo systemctl start nginx

#启动成功后,通过浏览器访问http://localhost,如果看到Nginx的欢迎页面,说明安装成功
  1. macOS:
bash 复制代码
#采用Homebrew安装方式
brew install nginx

#启动Nginx服务
brew services start nginx

# 启动成功后,通过浏览器访问http://localhost,如果看到Nginx的欢迎页面,说明安装成功
  1. Docker:
bash 复制代码
# 1.安装Docker
# 2.下载Nginx官方Docker镜像命令
docker pull nginx

#运行Nginx容器
docker run --name nginx-container -p 80:80 -d nginx

# 启动成功后,通过浏览器访问http://localhost,如果看到Nginx的欢迎页面,说明安装成功
# 安装完成后,可以根据需要进行配置,配置文件通常位于/etc/nginx/nginx.conf或/etc/nginx/sites-enabled/default等路径
# 配置完成后,可以使用命令行或浏览器检查配置是否正确
# 重启Nginx服务以应用新的配置

如何在Nginx上配置虚拟主机和域名?

  1. 在Nginx上配置虚拟主机和域名,需要编辑Nginx的配置文件(Nginx配置文件:通常位于/etc/nginx/nginx.conf或/etc/nginx/sites-available/default)
  2. 配置文件代码示例:
powershell 复制代码
# listen 80:监听80端口,用于接收HTTP请求
# server_name example.com www.example.com:定义虚拟主机的域名,可以同时定义多个域名
# index index.html index.htm:定义默认首页文件
# location /:定义虚拟主机的路由规则。这里的try_files
# uri/ =404表示,如果请求的文件不存在,返回404错误

server {
        listen        127.0.0.1:8888;
        server_name  www.nginx.com;
        root   "D:\test";
        location / {
			index index.html error/index.html;
            try_files $uri $uri/ =404;
        }
        location ~ \.php(.*)$ {
            fastcgi_pass   127.0.0.1:10000;
            fastcgi_index  index.php;
            include        fastcgi_params;
        }
}

如何在Nginx上配置SSL证书和HTTPS?

  1. 在Nginx上配置SSL证书和HTTPS,需要先获取SSL证书,然后在Nginx配置文件中进行相应的配置。以下是一个简单的示例,展示了如何在Nginx上配置SSL证书和HTTPS。
  2. 获取SSL证书
    可以从免费的证书颁发机构(如Let's Encrypt)或付费的证书颁发机构获取SSL证书。这里以Let's Encrypt为例,介绍如何获取SSL证书。
相关推荐
Learn-Share_HY2 小时前
[IT Network]如何配置反向路徑過濾器(rp_filter),以解決路由不對稱問題?
linux·嵌入式硬件·物联网·网络协议·tcp/ip·http·iot
小镇敲码人4 小时前
【深入浅出】之Qt 事件系统实战:鼠标、键盘、滚轮、窗口与定时器事件
数据库·qt·网络协议·mysql·http
K成长日志5 小时前
BLE不可连接状态--广播态
物联网·网络协议·蓝牙·低功耗·iot·ble
DevOpenClub6 小时前
全球区域与 IP 定位工作台案例方案
大数据·网络·网络协议·tcp/ip
wuyk5556 小时前
从零吃透 Modbus 通信|第 6 章:线圈功能码 05/0F 实现 & Modbus‑TCP 基础入门
c语言·网络·网络协议·tcp/ip
Titan20247 小时前
HTTPS基础知识梳理
服务器·网络·c++·网络协议·学习·http·https
新时代牛马8 小时前
epoll 源码路径:从epoll_ctl 到ep_poll 的就绪唤醒
网络·数据库·网络协议
艾莉丝努力练剑8 小时前
【AI大模型接入SDK】WebSocket & SSE 协议
网络·c++·websocket·网络协议·学习·面试
xieliyu.8 小时前
计算机网络‑IP 协议解析:核心特性总结
网络·笔记·网络协议·学习·tcp/ip·计算机网络
SendTomo8 小时前
send.wang:基于浏览器WebRTC实现无客户端文件互传
网络·python·网络协议·webrtc·p2p