LINUX Svn 运维
LINUX Apache 运维 

LINUX Nginx 教程

Nginx 是一个高性能的开源 Web 服务器,同时也可以用作反向代理服务器、负载均衡器和 HTTP 缓存等。在 Linux 系统上安装和配置 Nginx 相对简单,以下是 Nginx 的基本教程,涵盖安装、基本配置以及一些常见的用法。


步骤 1: 安装 Nginx

1、在大多数流行的 Linux 发行版上,可以使用包管理器来安装 Nginx。

在 Ubuntu 或 Debian 上安装 Nginx

#更新软件包列表:
sudo apt update

#安装 Nginx:
sudo apt install nginx

#启动 Nginx 服务
sudo systemctl start nginx

打开 Web 浏览器,并访问你服务器的 IP 地址或域名(如果域名已指向服务器)。如果看到欢迎页面或 Nginx 默认页面,则表示安装成功。


2、在 CentOS 或 RHEL 上安装 Nginx

#添加 EPEL 仓库(如果未安装):
sudo yum install epel-release

#安装 Nginx
sudo yum install nginx

#启动 Nginx 服务:
sudo systemctl start nginx

访问服务器的 IP 地址或域名,确认 Nginx 默认页面显示正常。


步骤 2: Nginx 基本配置

1、主要配置文件路径: Nginx 的主要配置文件位于 /etc/nginx/nginx.conf,而针对每个站点的配置文件通常位于 /etc/nginx/conf.d/ 或 /etc/nginx/sites-available/ 和 /etc/nginx/sites-enabled/。


2、编辑 Nginx 配置: 使用 sudo 权限编辑主配置文件或站点配置文件,例如:

sudo vim /etc/nginx/nginx.conf


3、重启 Nginx 服务

在修改配置文件后,重新加载 Nginx 配置以使更改生效:

sudo systemctl reload nginx


步骤 3: 基本 Nginx 配置示例

创建一个简单的站点配置

1、在 sites-available 目录中创建配置文件:

sudo systemctl reload nginx

2、示例配置:

server {
    listen 80;
    server_name example.com www.example.com;
    root /var/www/html/example.com;
    index index.html;
    location / {
        try_files $uri $uri/ =404;
    }
}

  • listen: 监听端口,这里是 HTTP 的默认端口 80。

  • server_name: 指定你的域名。

  • root: 指定网站文件的根目录。

  • index: 指定默认的首页文件。

  • location /: 处理 URI 的位置块,这里是一个基本的配置,用于静态文件服务。


3、启用站点配置:

创建符号链接将站点配置文件链接到 sites-enabled 目录中:

sudo ln -s /etc/nginx/sites-available/mywebsite /etc/nginx/sites-enabled/


4、检查配置语法并重新加载 Nginx

sudo nginx -t        # 检查语法
sudo systemctl reload nginx    # 重新加载配置



常用 Nginx 操作和命令

启动 Nginx 服务:

sudo systemctl start nginx


停止 Nginx 服务

sudo systemctl stop nginx


重启 Nginx 服务:

sudo systemctl restart nginx


查看 Nginx 服务状态:

sudo systemctl status nginx


查看 Nginx 的访问日志和错误日志:

sudo tail -f /var/log/nginx/access.log    # 访问日志
sudo tail -f /var/log/nginx/error.log     # 错误日志


进阶配置和功能

Nginx 可以配置更复杂的场景,如反向代理、负载均衡、SSL/TLS 加密等。进一步学习可以涉及到配置 HTTPS、缓存优化、安全设置等高级功能。


通过这些基本步骤和配置示例,你可以在 Linux 系统上成功安装、配置和使用 Nginx,实现基本的 Web 服务器功能和更高级的配置需求。