nginx从安装到配置详细说明(安装,安全配置,防盗链,动静分离,配置 HTTPS,性能优化)

yizhihongxing

nginx从安装到配置详细说明

安装

在 Ubuntu/Debian 上通过以下命令安装 nginx:

sudo apt-get update
sudo apt-get install nginx

在 CentOS/Fedora 上通过以下命令安装 nginx:

sudo yum install nginx

安全配置

当我们在互联网上使用 nginx 的时候,安全配置非常重要。以下是一些常见的安全配置:

隐藏版本号

nginx 默认的 http 头中会包含版本号,攻击者可以利用这个版本号来尝试攻击 nginx。因此,我们可以在 nginx 的配置文件中通过以下指令来隐藏版本号:

server_tokens off;

限制请求速率

攻击者可以通过发送大量的请求来拒绝服务,我们可以通过限制每个 IP 的请求速率来阻止这种攻击。下面是一个例子,我们每秒钟只允许访问 100 个请求:

limit_req_zone $binary_remote_addr zone=one:10m rate=100r/s;

server {
    location / {
        limit_req zone=one burst=10;
    }
}

去除不必要的模块

所有的模块都需要内存和 CPU 来运行,因此我们可以通过去除不必要的模块来提高 nginx 的性能。

防盗链

防盗链是指限制只有特定的网站才能加载您的资源,这对于一些会员网站来说很重要,因为他们希望只有付费的用户才能使用他们的资源。以下是一个例子,限制只有指定的域名才能访问我们的资源:

location ~* \.(gif|jpg|jpeg|png)$ {
    valid_referers none blocked server_names *.example.com;
    if ($invalid_referer) {
        return 403;
    }
}

动静分离

我们可以将静态资源和动态资源分开处理,以提高网站的性能。以下是一个例子:

location /static {
    alias /var/www/static;
}

location / {
    proxy_pass http://localhost:8000;
}

其中 /static 目录指向静态资源的路径,/ 目录是动态资源的路径。在这个例子中,静态资源将被直接访问,而动态资源将通过代理服务器访问。

配置 HTTPS

配置 HTTPS 需要 SSL 证书,可以通过以下步骤获取:

  1. 在 https://letsencrypt.org/ 上注册并获取 SSL 证书
  2. 安装 Certbot 工具
  3. 使用 Certbot 工具生成 SSL 证书

以下是一个示例 HTTPS 配置:

server {
    listen 443 ssl;
    server_name example.com;

    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

    location / {
        proxy_pass http://localhost:8000;
    }
}

性能优化

以下是一些常用的性能优化指令:

尽可能禁用访问日志

日志文件非常大,因此您可以考虑禁用访问日志或者使用代理服务器将日志文件转移到其他位置。

access_log off;

使用 Gzip 压缩

使用 Gzip 压缩可以减少网络带宽和传输时间。

gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;

启用缓存

启用缓存可以减少对后端服务器的请求,从而提高网站的性能。

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mycache:10m inactive=60m;
proxy_cache_key "$scheme$request_method$host$request_uri";
proxy_cache_valid 200 60m;
proxy_cache_bypass $http_pragma;
proxy_cache_revalidate on;

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:nginx从安装到配置详细说明(安装,安全配置,防盗链,动静分离,配置 HTTPS,性能优化) - Python技术站

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

相关文章

  • CentOS8 配置本地yum源的详细教程

    CentOS8相对于之前版本对于本地yum源的配置方法有一些变化,下面是一个完整的攻略: 准备工作 在开始配置本地yum源之前,需要安装一个工具来帮助我们创建yum仓库,同时需要准备所需要的软件包。 安装createrepo 创建yum仓库的工具createrepo可以通过yum安装: sudo yum install createrepo 准备软件包 可以…

    Linux 2023年5月14日
    00
  • linux下ant的安装

    本文转自 http://hanqunfeng.iteye.com/blog/668133 相关系列: linux下jdk的安装 http://hanqunfeng.iteye.com/blog/680708 linux下ant的安装 http://hanqunfeng.iteye.com/blog/668133 linux下redis的安装 http://h…

    Linux 2023年4月11日
    00
  • Linux lprm命令

    Linux lprm 命令的作用与使用方法 Linux lprm 命令用于取消打印作业。它可以帮助用户在 Linux 系统中取消已经提交的打印作业。 Linux lprm 命令使用方法 lprm 命令的基本语法如下: lprm [选项] [作业号] 其中,选项是可选的。作业号是要取消的打印作业的编号。下面是一些常用的选项: -P printer:指定打印机名…

    Linux 2023年5月10日
    00
  • V3s录音 交叉编译alsa linux

    1.下载alsa-lib和alsa-utils  www.alsa-project.org/main/index.php/Download 2.编译alsa-lib tar xvf alsa-lib-1.1.5.tar.bz2 #解压 sync cd alsa-lib-1.1.5/ MyDIR=”/usr/local/alsa” ./configure –…

    Linux 2023年4月13日
    00
  • 面向Web开发人员的Linux实用入门

    从 web 开发的视角说一下在使用 Linux 时遇到的问题,主要是针对操作本身,因为指令在网上都可以查到,不会深入原理,但尽量实用。 基础认知 为什么使用 Linux 最初我使用 Linux 是因为我需要的应用在教程里只提供了 Linux 版本,于是我就按步骤把它部署起来,就这样顺其自然地用了下去,期间也解决了一些问题,在这个过程中,我逐渐产生了一些疑问:…

    2023年4月8日
    00
  • centos7切换启动内核与切换启动模式的讲解

    下面是“centos7切换启动内核与切换启动模式”的攻略: 一、背景简介 CentOS 7是目前使用较为广泛的一款Linux操作系统。在使用CentOS 7的过程中,有时候可能需要切换启动内核或者切换启动模式。那么如何进行切换呢?本文将为大家提供具体的攻略。 二、切换启动内核 2.1 查看当前使用的内核版本 使用以下命令可以查看当前系统正在使用的内核版本: …

    Linux 2023年5月14日
    00
  • Smart210学习记录——-linux驱动中断

    Linux中断  Linux 的中断处理分为两个半部,顶半部处理紧急的硬件操作,底半部处理不紧急的耗时操作。tasklet 和工作队列都是调度中断底半部的良好机制,tasklet 基于软中断实现。内核定时器也依靠软中断实现。 1.申请和释放中断 申请中断 int request_irq(unsigned int irq, irq_handler_t hand…

    Linux 2023年4月11日
    00
  • CentOS技巧:减小Linux swap分区的方法

    下面是“CentOS技巧:减小Linux swap分区的方法”的完整攻略: 介绍 Swap分区是Linux系统中的一种特殊分区,主要用于在物理内存不足时作为虚拟内存进行使用。但是,在某些情况下,我们可能需要减小Swap分区的大小,如修改分区布局或调整系统资源分配等。本文将介绍如何减小Linux Swap分区的大小。 步骤 1. 检查Swap使用情况 在开始减…

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