# Linux系统如何安装使用Nginx ## 一、Nginx简介 Nginx(发音为"engine-x")是一款高性能的开源Web服务器,同时也可作为反向代理服务器、负载均衡器和HTTP缓存使用。相较于传统Apache服务器,Nginx采用事件驱动的异步架构,能够高效处理高并发连接,特别适合现代高流量网站。 ## 二、安装前的准备 1. **系统要求** - 主流Linux发行版(Ubuntu/Debian/CentOS等) - 至少512MB内存(生产环境建议1GB以上) - root或sudo权限用户 2. **环境准备** ```bash # 更新系统软件包 sudo apt update && sudo apt upgrade -y # Ubuntu/Debian sudo yum update -y # CentOS/RHEL
Ubuntu/Debian系统:
sudo apt install nginx -y
CentOS/RHEL系统:
sudo yum install epel-release -y sudo yum install nginx -y
# 安装编译依赖 sudo apt install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev -y # 下载源码(以1.25.3版本为例) wget https://nginx.org/download/nginx-1.25.3.tar.gz tar -zxvf nginx-1.25.3.tar.gz cd nginx-1.25.3 # 编译安装 ./configure --prefix=/usr/local/nginx \ --with-http_ssl_module \ --with-http_v2_module make && sudo make install
启动/停止/重启
sudo systemctl start nginx # 启动 sudo systemctl stop nginx # 停止 sudo systemctl restart nginx # 重启 sudo systemctl reload nginx # 平滑重载配置
设置开机自启
sudo systemctl enable nginx
验证安装
curl -I 127.0.0.1 # 应返回类似: # HTTP/1.1 200 OK # Server: nginx/1.25.3
Nginx主要配置文件位于: - /etc/nginx/nginx.conf
(主配置文件) - /etc/nginx/sites-available/
(虚拟主机配置) - /etc/nginx/sites-enabled/
(启用的虚拟主机)
典型配置示例:
server { listen 80; server_name example.com; root /var/www/html; location / { index index.html; } location /api { proxy_pass http://localhost:3000; } }
server { listen 80; server_name mysite.com; root /var/www/mysite; index index.html; }
location / { proxy_pass http://backend_server; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; }
upstream backend { server 192.168.1.101:8080; server 192.168.1.102:8080; } server { location / { proxy_pass http://backend; } }
禁用服务器标识
server_tokens off;
配置SSL证书(Let’s Encrypt示例)
sudo apt install certbot python3-certbot-nginx sudo certbot --nginx -d example.com
限制访问
location /admin { allow 192.168.1.0/24; deny all; }
Nginx日志默认位置: - 访问日志:/var/log/nginx/access.log
- 错误日志:/var/log/nginx/error.log
使用工具分析:
# 统计访问量前10的IP awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -nr | head -n 10
调整worker进程数
worker_processes auto; # 通常设置为CPU核心数
启用gzip压缩
gzip on; gzip_types text/plain text/css application/json;
调整缓冲区大小
client_body_buffer_size 10K; client_header_buffer_size 1k;
端口冲突
sudo netstat -tulnp | grep :80
权限问题
sudo chown -R www-data:www-data /var/www
测试配置文件
sudo nginx -t
通过本文介绍,您应该已经掌握了Nginx的安装、基本配置和常见用法。建议在生产环境部署前,先在测试环境充分验证配置。更多高级功能可参考Nginx官方文档。 “`
注:实际字数约1100字,可根据需要调整具体章节的详细程度。文中命令适用于大多数现代Linux发行版,个别操作可能需要根据具体系统版本微调。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。