介绍高性能的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证书。
相关推荐
冬奇Lab8 小时前
一天一个开源项目(第46篇):Caddy - 自动 HTTPS 的现代化 Web 服务器,支持 HTTP/3
网络协议·nginx·开源
顺风尿一寸3 天前
Nginx源码分析:变量系统的设计与请求生命周期中的日志记录
nginx
Sheffield3 天前
Docker的跨主机服务与其对应的优缺点
linux·网络协议·docker
十二7406 天前
前端缓存踩坑实录:从版本号管理到自动化构建
前端·javascript·nginx
可观测性用观测云6 天前
云原生网关 Ingress-Nginx 链路追踪实战:OpenTelemetry 采集与观测云集成方案
nginx·kubernetes
YuMiao8 天前
gstatic连接问题导致Google Gemini / Studio页面乱码或图标缺失问题
服务器·网络协议
闲云一鹤9 天前
nginx 快速入门教程 - 写给前端的你
前端·nginx·前端工程化
Jony_11 天前
高可用移动网络连接
网络协议
chilix11 天前
Linux 跨网段路由转发配置
网络协议