watson/canonical

Laravel 的规范主机中间件

1.0.0 2017-08-17 08:26 UTC

This package is auto-updated.

Last update: 2024-09-17 18:15:31 UTC


README

如果你的 Laravel 应用需要从根域名重定向到 www. 或相反?需要你的 Laravel 应用将所有访客重定向到 HTTPS 连接?

这是一个为 Laravel 提供简单中间件的库,该中间件为 Laravel 应用提供基本的重定向功能。你只需设置应用的主机规范,以及是否希望请求默认加密,Canonical 将处理其余部分。

这通过确保所有访问您站点的访客都被重定向到正确的宿主并升级到可用的安全连接来防止重复内容。

你也可以在 Web 服务器中配置这类设置,但将它们保存在应用中会更方便,这样所有设置都在同一个地方。

安装

首先运行 composer require watson/canonical

接下来,将 Watson\Canonical\CanonicalMiddleware 添加到你的 app/Http/Kernel.php 文件中,指定你希望它运行的位置。

请注意,Canonical 目前仅支持 Laravel 5.5。

配置

你可以通过环境变量或使用 php artisan vendor:publish --tags=config 命令将配置文件发布到你的应用中来配置 Canonical。

查看为您创建的配置文件,config/canonical.php。在这里,你可以设置你想要为应用使用的默认主机名。

如果你的应用收到来自另一个主机的请求,它将执行永久重定向到此处设置的规范主机,同时保持请求路径。

你也可以选择加密所有请求,这样不安全的请求将自动重定向到 HTTPS(如果您的站点支持的话)。

最后,你可以选择不重定向某些主机,例如 api. 子域名。将任何你希望添加的域名添加到 ignore 数组中。