介绍高性能的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证书。
相关推荐
煲冬瓜的程序猿2 小时前
BGP(三)联盟、反射器
网络·网络协议
邵奈一3 小时前
git报错:error: RPC failed; curl 16 Error in the HTTP2 framing layer
git·网络协议·rpc
交换机路由器测试之路3 小时前
【资料分享】wireshark解析脚本omci.lua文件20250306版本发布(独家分享)
网络协议·测试工具·wireshark·lua·omci
游王子5 小时前
springboot3 RestClient、HTTP 客户端区别
网络·网络协议·http
若云止水5 小时前
Ubuntu 下 nginx-1.24.0 源码分析 - conf_ctx
数据库·nginx·ubuntu
程序员黄同学8 小时前
请谈谈 HTTP 中的重定向,如何处理 301 和 302 重定向?
网络·网络协议·http
vvilkim9 小时前
WebSocket:实现实时通信的利器
网络·websocket·网络协议
GalaxyPokemon9 小时前
LINUX网络基础 [五] - HTTP协议
网络·网络协议·http
木头没有瓜10 小时前
使用websocket,注入依赖service的bean为null
网络·websocket·网络协议