Nginx指南
从零开始学习Nginx
Nginx是一个高性能的开源Web服务器,同时也可以作为反向代理服务器、负载均衡器和HTTP缓存等多种用途。
什么是Nginx
Nginx是一款轻量级、高性能的Web服务器软件,由俄罗斯的程序员Igor Sysoev开发。Nginx以其卓越的性能和稳定性而闻名,被广泛应用于互联网公司的服务器架构中。与传统的Apache服务器相比,Nginx在处理高并发连接时表现更为出色。
如何安装Nginx
Ubuntu系统安装Nginx
在Ubuntu系统上,可以通过以下命令安装Nginx:
sudo apt update
sudo apt install nginx
安装完成后,可以使用以下命令启动Nginx服务:
sudo systemctl start nginx
CentOS系统安装Nginx
在CentOS系统上,可以通过以下命令安装Nginx:
sudo yum install nginx
安装完成后,可以使用以下命令启动Nginx服务:
sudo systemctl start nginx
Nginx配置文件
Nginx的主要配置文件位于/etc/nginx/nginx.conf,你可以通过编辑这个文件来配置Nginx的各种参数和行为。另外,Nginx还支持使用include指令引入其他配置文件,方便管理和维护。
以下是一个简单的Nginx配置示例:
# 静态网站配置
server {
listen 80;
server_name example.com www.example.com;
location / {
root /var/www/html;
index index.html;
}
}
# HTTPS配置
server {
listen 443 ssl;
server_name example.com www.example.com;
ssl_certificate /etc/nginx/ssl/certificate.crt;
ssl_certificate_key /etc/nginx/ssl/private.key;
location / {
root /var/www/html;
index index.html;
}
}
# 反向代理配置
server {
listen 80;
server_name api.example.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
# 负载均衡配置
upstream backend_servers {
server backend1.example.com;
server backend2.example.com;
}
server {
listen 80;
server_name app.example.com;
location / {
proxy_pass http://backend_servers;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Nginx常用命令
启动Nginx
sudo systemctl start nginx
停止Nginx
sudo systemctl stop nginx
重启Nginx
sudo systemctl restart nginx
热重启Nginx更新配置文件
nginx -s reload
注意,只有当没有长连接时热重启更新配置文件才会成功
- 什么是Nginx
- 如何安装Nginx
- Ubuntu系统安装Nginx
- CentOS系统安装Nginx
- Nginx配置文件
- Nginx常用命令
- 启动Nginx
- 停止Nginx
- 重启Nginx
- 热重启Nginx更新配置文件