Nginx 安装与配置规则入门详解

下面是 Nginx 安装与配置规则的完整攻略:

Nginx 安装与配置规则入门详解

一、介绍

Nginx 是一款开源的高性能 Web 服务器软件,它可以作为反向代理、负载均衡服务器和 HTTP 缓存服务器。本文将介绍如何在 Linux 系统上安装并配置 Nginx,并给出两个实际应用的示例。

二、安装 Nginx

2.1 在 Ubuntu 系统上安装 Nginx

在 Ubuntu 系统上,可以使用 apt-get 命令来安装 Nginx。具体方法如下:

sudo apt-get update
sudo apt-get install nginx

安装完成后,使用以下命令检查 Nginx 是否已经启动:

systemctl status nginx

若 Nginx 已经启动,会出现如下信息:

● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2022-01-07 14:11:54 CST; 1h 19min ago

2.2 在 CentOS 系统上安装 Nginx

在 CentOS 系统上,可以使用 yum 命令来安装 Nginx。具体方法如下:

yum install nginx

安装完成后,使用以下命令检查 Nginx 是否已经启动:

systemctl status nginx.service

若 Nginx 已经启动,会出现如下信息:

● nginx.service - The nginx HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
  Drop-In: /usr/lib/systemd/system/nginx.service.d
           └─php-fpm.conf
   Active: active (running) since Thu 2022-01-06 23:29:38 CST; 11h ago

三、配置 Nginx

3.1 修改默认网站设置

Nginx 默认的网站设置在 /etc/nginx/sites-available/default 文件中。打开该文件,修改以下参数:

  1. 将默认监听端口改为 80
listen 80 default_server;
  1. 修改默认网站目录:
root /var/www/html;
  1. 将原始的欢迎页面注释掉:
#index index.html index.htm index.nginx-debian.html;

将注释去掉的原始的欢迎页面可以是自己的网站首页。

3.2 新建虚拟主机

为了支持多个网站,需要在 Nginx 中创建一个新的虚拟主机。可以按照以下步骤进行:

  1. /etc/nginx/sites-available/ 目录下新建一个 .conf 文件,例如:
sudo vim /etc/nginx/sites-available/example.com.conf
  1. 编辑 .conf 文件,添加以下内容:
server {
    listen 80;
    server_name example.com www.example.com;
    access_log /var/log/nginx/example.com.access.log;

    location / {
        root /var/www/example.com;
        index index.html;
    }
}

其中,example.com 为自己的域名或者 IP。

  1. /etc/nginx/sites-enabled/ 目录下创建一个软链接:
sudo ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/
  1. 重启 Nginx 服务使之生效:
sudo systemctl restart nginx

3.3 配置 HTTPS

要配置 HTTPS,需要先安装证书。可以使用 Let's Encrypt 免费证书,也可以使用其他第三方提供的证书。

下面以使用 Let's Encrypt 证书为例:

  1. 安装 Certbot:
sudo apt-get install certbot python-certbot-nginx
  1. 获取证书:
sudo certbot --nginx -d example.com -d www.example.com

其中,example.com 为自己的域名或者 IP。该命令会自动配置 HTTPS,并且会自动续期证书。

四、示例应用

4.1 反向代理

假设有两个服务,分别运行在 http://localhost:8080http://localhost:8081 上。现在想要使用 Nginx 将这两个服务分别映射到 http://localhost/service1http://localhost/service2

可以按照以下步骤进行:

  1. 修改 Nginx 配置文件:
sudo vim /etc/nginx/sites-available/example.com.conf
  1. 添加以下内容:
location /service1 {
    proxy_pass http://localhost:8080;
}

location /service2 {
    proxy_pass http://localhost:8081;
}
  1. 重启 Nginx 服务使之生效:
sudo systemctl restart nginx

现在就可以通过 http://localhost/service1http://localhost/service2 访问这两个服务了。

4.2 负载均衡

假设有两台服务器,分别运行着 http://server1http://server2 上。现在想要使用 Nginx 来实现负载均衡,将所有请求分发到这两台服务器上。

可以按照以下步骤进行:

  1. 修改 Nginx 配置文件:
sudo vim /etc/nginx/sites-available/example.com.conf
  1. 添加以下内容:
upstream backend {
    server server1;
    server server2;
}

server {
    ...

    location /backend {
        proxy_pass http://backend;
    }
}
  1. 重启 Nginx 服务使之生效:
sudo systemctl restart nginx

现在就可以通过 http://example.com/backend 访问这两台服务器上运行的服务了。请求会被自动分配到这两台服务器上,实现负载均衡。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Nginx 安装与配置规则入门详解 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • 详解nginx如何配置HTTPS

    以下是详解nginx如何配置HTTPS的完整攻略。 第一步:准备工作 在配置HTTPS前,需要先准备好以下内容: 一张签名过的SSL证书。 一份支持SSL的nginx安装文件。 第二步:安装SSL证书 将得到的SSL证书的两个文件:.crt和.key文件上传到服务器的指定目录下,我们这里用/etc/nginx/cert/目录作为例子。 第三步:修改nginx…

    Nginx 2023年5月16日
    00
  • 基于Nginx的衍生版服务器Tengine简介

    基于Nginx的衍生版服务器Tengine简介 Tengine是一款基于Nginx开发的高性能Web服务器,由淘宝网发起开发,并在工业和商业领域得到广泛应用。Tengine在保留Nginx所有优点的基础上,增加了许多功能模块,增强了系统的稳定性和可靠性。 Tengine的主要特点 Tengine有以下主要特点: Tengine全面兼容Nginx。 Tengi…

    Nginx 2023年5月16日
    00
  • Nginx简介_动力节点Java学院整理

    下面我将详细讲解“Nginx简介_动力节点Java学院整理”的完整攻略,并包含两条示例说明。 Nginx简介 一、什么是Nginx Nginx是一个高性能的HTTP和反向代理服务器,它也可以作为邮件代理服务器使用。Nginx是由Igor Sysoev开发的,第一个版本的公开发布是在2004年。 二、Nginx的优点 高性能:Nginx是一个轻量级的Web服务…

    Nginx 2023年5月16日
    00
  • nginx 变量相关的map模块与split_clients模块及geo模块和geoip模块及keepalive介绍

    map 模块指令默认编译进nginx的 Syntax: map string $variable { … } # 表示string匹配到{}里的值或变量赋值给$variable Default: — Context: http Syntax: map_hash_bucket_size size; Default: map_hash_bucket_size…

    Nginx 2023年4月13日
    00
  • Nginx配置实现下载文件的示例代码

    下面是针对Nginx配置实现下载文件的示例代码的完整攻略。 示例1:通过Nginx配置实现静态文件下载 步骤1:在Nginx配置文件中增加location配置 在Nginx的配置文件中,需要增加location配置来指定所要下载的文件路径。 location /files/ { alias /usr/share/nginx/html/downloads/; …

    Nginx 2023年5月16日
    00
  • 使用Nginx实现端口转发TCP代理的实现示例

    使用Nginx实现端口转发TCP代理的实现示例,一般包含以下两个步骤: 步骤一:安装Nginx 在Ubuntu系统中安装Nginx的步骤如下: 更新软件源:sudo apt-get update 安装Nginx:sudo apt-get install nginx -y 启动Nginx:sudo systemctl start nginx 验证Nginx是否…

    Nginx 2023年5月16日
    00
  • Nginx日志统计分析的常用命令总结

    接下来我就来详细讲解一下“Nginx日志统计分析的常用命令总结”的完整攻略。 Nginx日志统计分析的常用命令总结 概述 在使用Nginx作为Web服务器时,日志记录是非常重要的。而对于这些日志进行统计分析,可以为后续的优化提供有价值的参考。下面总结了一些Nginx日志统计分析中常用的命令。 awk awk是一种强大的文本分析工具,它可以对文本进行基本的分析…

    Nginx 2023年5月16日
    00
  • LinuxMint/Ubuntu 安装Nginx+PHP7+Mysql

    1. 安装Nginx 要安装Nginx首先要将官方的项目源添加到系统中: 可以直接在/etc/apt/sources.list文件中添加, 也可以在/etc/apt/sources.list.d中新建一个nignx.list文件并将项目源添加进去. ## Replace $release with your corresponding Ubuntu rele…

    Nginx 2023年4月16日
    00
合作推广
合作推广
分享本页
返回顶部