介绍高性能的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证书。
相关推荐
搬码临时工4 分钟前
本地部署VMware ESXi,并实现无公网IP远程访问管理服务器
服务器·网络协议·tcp/ip
TLucas2 小时前
Centos 7部署.NET 8网站项目
linux·nginx·postgresql·centos·.net
Doris_LMS7 小时前
在Linux下安装nginx(保姆级别)
linux·运维·nginx·centos
sibylyue9 小时前
Apache HttpClient HTTP 线程池参数设置
网络协议·http·apache
斯~内克13 小时前
深入解析域名并发请求限制与HTTP/2多路复用技术
网络·网络协议·http
weixin_4569042713 小时前
基于UDP的SNMP协议
网络·网络协议·udp
脑袋大大的17 小时前
从“PPT动画”到“丝滑如德芙”——uni-app x 动画性能的“终极奥义”
前端·javascript·nginx·uni-app·uniapp·app开发·混合开发
optimistic_chen18 小时前
【Java EE初阶 --- 网络原理】网络层---IP协议,数据链路层---以太网协议
网络·笔记·网络协议·tcp/ip·java-ee·文件io
charlie11451419121 小时前
计算机网络八股文——TCP,UDP
网络·网络协议·tcp/ip·计算机网络·面试·udp·八股文
DemonAvenger1 天前
Go语言中的gRPC:原理与实战
网络协议·架构·go