Ubuntu 安装 Nginx

Nginx 是一个高性能的 Web 服务器和反向代理服务器,同时也可以用作负载均衡器和 HTTP 缓存。

Nginx 的主要用途

用途 说明
Web服务器 提供网页服务,处理用户的 HTTP 请求,返回 HTML、CSS、JS、图片等静态资源。
反向代理服务器 将用户请求转发到后端服务器(如 Tomcat、Flask、Spring Boot),隐藏真实后端。
负载均衡器 把用户请求平均分发到多个后端服务器,提高处理能力和可用性。
缓存服务器 缓存静态内容或后端响应,加快访问速度,减轻后端压力。

安装 Nginx

复制代码
sudo apt-get update
sudo apt-get install -y nginx

Nginx 配置路径

内容 路径
nginx 根目录 /etc/nginx
配置文件 /etc/nginx/nginx.conf
站点配置目录 /etc/nginx/sites-available/
启用的站点目录 /etc/nginx/sites-enabled/
默认网页目录 /var/www/html
日志文件 /var/log/nginx/access.log 和 error.log

/etc/nginx/nginx.conf:文件不用动,它的作用是加载其他子配置文件。

/etc/nginx/sites-available/:所有的子配置文件都存放在这个目录,相当于候选配置。

/etc/nginx/sites-enabled/:Nginx 启动时只会读取这个目录中的配置文件,如果想让候选配置生效,就把候选配置通过软链接,连接到这个目录。


配置文件

我们要添加一个配置,要怎么弄?

  1. 在 /etc/nginx/sites-available/ 目录下创建一个文件,这个文件名称自定义,可以叫任何名字(比如:default、example.com、api.conf,都可以)。文件的内容是一个 server 区块,用来配置某个网站或服务的监听方式、路径、静态目录等。
bash 复制代码
sudo vim /etc/nginx/sites-available/my-site

/etc/nginx/sites-available/my-site 文件内容如下:

bash 复制代码
server {
    listen 80;
    server_name localhost;
    root /var/www/html;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}
参数说明 含义
listen 80; 监听 80 端口(HTTP 默认端口,HTTPS端口443)
server_name localhost; 设置主机名(用域名部署时改成你的域名)
root /var/www/html; 网站根目录,里面应该放 index.html 等文件
index index.html index.htm; 设置默认首页文件
location / 匹配所有路径请求
try_files uri uri/ =404; 如果文件存在就加载文件,不存在就返回 404
  1. 保存退出后,再用符号链接让它生效:

添加软链接

bash 复制代码
sudo ln -s /etc/nginx/sites-available/my-site /etc/nginx/sites-enabled/

移除软链接

bash 复制代码
sudo rm /etc/nginx/sites-enabled/my-site
  1. 检查配置文件是否正确,然后重启 nginx 服务
bash 复制代码
sudo nginx -t
sudo systemctl reload nginx
  1. 把静态文件资源,例如 index.html,放到 root /var/www/html 这里配置的目录

  2. 然后浏览器输入 http://ip:port 访问


Nginx 常用命令

启动 Nginx:sudo systemctl start nginx

停止 Nginx:sudo systemctl stop nginx

重启 Nginx:sudo systemctl restart nginx

重载配置(不中断服务):sudo systemctl reload nginx

查看 Nginx 状态:sudo systemctl status nginx

开启开机自启动:sudo systemctl enable nginx

禁用开机启动:sudo systemctl disable nginx

查看 Nginx 版本:nginx -v

查看 Nginx 安装的模块:nginx -V

检查配置文件是否有语法错误:sudo nginx -t

启动 Nginx(等同于 systemctl start nginx):sudo nginx

停止 Nginx(快速关闭):sudo nginx -s stop

优雅关闭(处理完当前请求再退出):sudo nginx -s quit

重载配置(推荐使用):sudo nginx -s reload

更多配置请查看:nginx配置

相关推荐
KIDULT°1 小时前
MySQL系列 (1):数据库原理
运维·数据库·mysql·云计算
wewowilling4 小时前
认识微服务
java·运维·微服务·springcloud
玖石书4 小时前
Ubuntu 24.04 UFW 全命令攻略:从入门到端口开放实战
linux·运维·ubuntu
weifont5 小时前
自动化抓取和上架商品:能不动手,就少动手
运维·前端·自动化
拂拉氏6 小时前
【知识讲解】 Linux之动静态库的了解
linux·运维·服务器·动静态库
Mikko77 小时前
Linux 重启后日志没了?进程被 OOM 杀了去哪看?logrotate 之后日志还往旧文件写?三台真机实测日志与性能排查
linux·运维·centos
光依旧7 小时前
发版就掉请求?Spring Boot优雅停机的四步
运维·spring boot·nginx·高可用·优雅停机·mcp server
yichengerp8 小时前
电子行业常用erp系统有哪些?推荐适合中小电子厂的易呈erp软件,操作简单,易落地
大数据·运维·人工智能·云计算·制造
天国梦8 小时前
国密门禁品牌怎么选?2026年最新3个避坑要点
运维·服务器·数据库·python
信可维9 小时前
自动化操作多平台账号:登录态、双会话与 User Data 的 3 个坑
运维·自动化