如何运用nginx

295 阅读4分钟

这是我参与更文挑战的第8天,活动详情查看: 更文挑战

如何使用 Nginx 重定向 Nginx(读作 engine-x)是一个强大的开源高性能 HTTP Web 服务器。它可以用作反向代理或POP3/IMAP代理。它是第三大最受欢迎的 Web 服务器,以其增强的性能、易用性和配置、稳定性和最低资源利用率而闻名。这就是为什么在本教程中,我们将向您展示如何使用 Nginx 以不同方式重定向流量。

Nginx 中的重定向 根据您的条件将网站的 URL 转发到另一个地址或点的能力是 Nginx Web 服务器的基本功能。Nginx 重定向简单且易于设置。用户通常会选择重定向具有良好 SEO 排名的页面。例如,当从 CMS 切换到另一个平台时。这将彻底改变您的 URL 组成。因此,为了使当前页面保持良好的 SERP 位置,您可以将旧 URL 重新路由到新页面。

在本教程中,我们将指导您创建两种 Nginx 重定向:永久和临时。请记住在您的 VPS 上安装 Nginx。

临时和永久 Nginx 重定向解释 如果页面位置需要暂时从一个位置更改到另一个位置,临时重定向是有益的。重定向响应代码302用于指定页面的临时移动。

如果正在执行网站维护,则使用临时重定向来通知用户该网站不可用。另一个例子是当你对一个不完整的页面进行临时重定向时;您将该页面链接到另一个点或主页:

访客->网站页面->网站维护中

另一方面,永久性 Nginx 重定向通知 Web 浏览器它应该将旧页面或域永久链接到新位置或域。为了映射此更改,重定向响应代码301用于指定页面的永久移动。当用户想要更改域名并且不再希望浏览器访问它时,这些类型的重定向很有用。

Nginx 中的页面重定向 请记住,首先您必须通过 SSH 访问您的 VPS。如果您遇到问题,请查看我们的PuTTY 教程。

在 Nginx 中,大多数重定向都可以借助内置的重写功能来实现。这是 Nginx 全新安装时可用的默认功能,可以形成两种 Nginx 重定向——即永久和临时。在其普通形式中,它至少需要两种情况,即旧 URL 和新 URL。

将页面重定向到 Nginx Web 服务器上的临时或永久位置非常简单。在位置/etc/ nginx /sites-enabled/default您应该粘贴以下代码,同时更改变量以满足您的需要:

位置 path_pattern {
重写 ^/oldURL$ www.domainone.com/newURL重定向; }

如果您想将页面永久重定向到另一个链接,只需在上述命令中使用“permanent”而不是“redirect”。同时, path_pattern 通常是/index.html。

Nginx 重定向域 要将一个域重定向到另一个域,请在终端中使用以下命令:

服务器 { 听80; 主机名 devisers.in www.devisers.in; 重写 ^ www.devisers.com$request_uri?永恒的; }

在这里,我们使用两个域。我们要重定向的那个 - www.devisers.in,以及新的 - www.devisers.com。

Nginx 从 HTTP 重定向到 HTTPS (SSL) HTTP 和HTTPS使用不同的端口——HTTP 端口 80 和 HTTPS 端口 443。使用 HTTPS 更有帮助,因为它可以保护您免受可能劫持会话的 MITM 攻击。请记住,要使此方法起作用,您需要已设置 SSL。因此,为了保护您和访问者之间发送的所有信息,将来自 HTTP 的所有请求重定向到 HTTPS 是有益的。为此,我们可以将此修改添加到同一文件中:

服务器 { 听 80 default_server; 服务器名称 _; 返回 301 https://hosthostrequest_uri; } 现在 HTTP 默认服务器的所有流量都重定向到 HTTPS。

Nginx 重定向特定站点 如果您使用各种站点或应用程序并且只想重定向单个站点,这非常重要。请按照以下步骤操作:

服务器 { 听80; server_name devisers.in; 返回 301 devisers.in$request_uri; } 在这里,我们将站点 www.devisers.in 重定向到 www.devisers.in

从 www 重定向到非 www 很多时候,您希望访问者访问您网页的普通域,例如 devisers.in 而不是 www.devisers.in。尽管在 Nginx 中有很多选项可以从 www 重定向到非 www,但其中一种简单的方法如下所述:

服务器 { server_name www.devisers.in; 返回 301 scheme://devisers.inscheme://devisers.inrequest_uri; } 重要提示:这是永久重定向或“301 重定向”。

使用以下命令重新启动 Nginx Web 服务器以使更改生效:

须藤 systemctl 重启 Nginx 如果您希望从非 www 重定向到 www,只需替换上述命令中提到的网站 URL。将 www.devisers.in 替换为 devisers.in,反之亦然。

结论

Nginx 是功能最强大且易于使用的 Web 服务器之一,它允许您如上所述进行临时和永久重定向。

现在您知道如何创建从 HTTP 到 HTTPS、从 www 或非 www 或反之亦然的 Nginx 重定向。确保使用正确的重定向类型,因为不正确的重定向会影响您的搜索排名。在准确重定向的帮助下,您可以在根据需要更改站点结构的同时利用当前的 Web 状态。

我们希望本教程对您有所帮助!下一篇见。