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服务器搭建和配置详解

    我可以详细讲解“nginx服务器搭建和配置详解”的完整攻略并给出两条示例说明。 一、nginx服务器搭建 1. 安装nginx 在Ubuntu系统中,可以使用以下命令安装nginx: sudo apt-get update sudo apt-get install nginx 安装完成后,可以使用以下命令启动nginx: sudo service nginx…

    Nginx 2023年5月16日
    00
  • nginx下修改svn配置

    最近公司的SVN服务器地址做了变更,而我用的操作系统是Ubuntu操作系统,我也不想把以前下载的代码重新进行修改,我想通过修改svn地址,应该可以,终于在网上通过查找资料,找到了解决的方法:     进行你所工作的svn映射到本地的目录中。在终端下运行$svn switch –relocate http://oldPath http://newpath。系…

    Nginx 2023年4月12日
    00
  • nginx缓存以及清除缓存的使用

    下面是关于“nginx缓存以及清除缓存的使用”的详细攻略及示例。 什么是nginx缓存 在高并发场景中,如果每次请求都去从数据库、文件中读取数据,会给服务器带来巨大的压力,导致响应速度变慢。这时候,使用nginx缓存可以大大减轻服务端的负担,同时提高网站的访问速度。 Nginx缓存是指将Web应用返回的静态或半静态资源暂时存储在内存中,在下次请求相同资源时将…

    Nginx 2023年5月16日
    00
  • 使用uWSGI和nginx如何设置连接超时时间

    前段时间做一个django的项目,因为之前项目只是一个后台程序,因此数据库设计的并不满足后面新添加的前端的需求,所以查询显示什么的特别冗余,造成了大量的坑。今天就分享一个爬坑的过程。 1先看看需求 项目要求在一个报告中显示一个列表,这个列表包含这个报告中包含的所有任务文件。在发生问题这个报告中包含了大约200个文件,平均每个文件的大小差不多在1.5M左右。对…

    Nginx 2023年4月13日
    00
  • Nginx Linux详细安装部署教程

    1.下载安装 1.官网下载 官网:http://nginx.org/en/download.html 2.将下载好的 nginx-1.16.1.tar.gz 上传到linux或ubuntu指定的文件下 3.nginx安装 tar -zxvf nginx-1.16.1.tar.gz // 解压 cd nginx-1.16.1 // 切换目录 ./configu…

    Nginx 2023年4月13日
    00
  • nginx.conf配置文件结构小结

    nginx是一个高性能的Web服务器和反向代理服务器。为了控制nginx行为,我们需要编辑其配置文件nginx.conf。下面对nginx.conf中的配置文件结构进行详细讲解。 nginx.conf配置文件结构主要包含以下几个部分: 全局块 全局块包含着影响nginx全局的指令。例如nginx运行的用户和工作进程的数量。所有在配置文件中遇到的其他块和指令都…

    Nginx 2023年5月16日
    00
  • Nginx配置指令的执行顺序

    Nginx指令顺序:set与echo location /test { set $a 32; echo $a; set $a 56; echo $a; } # set 指令就是在 rewrite 阶段运行的,而 echo 指令就只会在 content 阶段运行 # rewrite 阶段总是在 content 阶段之前执行 #结果server-rewrite …

    Nginx 2023年4月12日
    00
  • Nginx中Location从零开始的配置教程

    下面我来详细讲解“Nginx中Location从零开始的配置教程”的完整攻略。 什么是Location 在Nginx中,Location是指匹配URL的正则表达式,可以对不同的URL配置不同的处理方式。也就是说,可以通过配置Location来达到控制访问权限、转发请求、缓存等各种功能的目的。 Location的配置语法 配置Location的语法如下: lo…

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