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配置

相关推荐
无敌暴龙兽z1 小时前
离线环境安装elk及设置密码认证
运维·elk
好奇的菜鸟1 小时前
如何在 Ubuntu 24.04 (Noble) 上使用阿里源
linux·运维·ubuntu
bcbobo21cn2 小时前
初步了解Linux etc/profile文件
linux·运维·服务器·shell·profile
wayuncn2 小时前
月付物理服务器租用平台-青蛙云
运维·服务器·服务器租用·服务器托管·物理机租用
望获linux2 小时前
【实时Linux实战系列】CPU 隔离与屏蔽技术
java·linux·运维·服务器·操作系统·开源软件·嵌入式软件
0wioiw02 小时前
C#基础(项目结构和编译运行)
linux·运维·服务器
2401_873587824 小时前
Linux常见指令以及权限理解
linux·运维·服务器
RW~4 小时前
Minio安装配置,桶权限设置,nginx代理 https minio
运维·nginx·https·minio
李洋-蛟龙腾飞公司4 小时前
HarmonyOS NEXT应用元服务常见列表操作分组吸顶场景
linux·运维·windows
链上Sniper4 小时前
智能合约状态快照技术:实现 EVM 状态的快速同步与回滚
java·大数据·linux·运维·web3·区块链·智能合约