synolia/sylius-maintenance-plugin

当您的网站处于维护状态时,用于Sylius的插件

安装次数: 41,460

依赖者: 0

建议者: 0

安全: 0

星级: 3

关注者: 11

分支: 6

开放问题: 1

类型:sylius-plugin

v1.5.0 2024-01-05 07:50 UTC

This package is auto-updated.

Last update: 2024-09-05 08:18:49 UTC


README

License CI - Analysis CI - Sylius Version Total Downloads

Sylius 维护插件

功能

当您的网站处于维护状态时,您想要

  • 不允许访问您的网站,并在首页显示“网站正在维护”的消息。
  • 允许某些IP地址或秘密令牌访问您的网站
  • 通过命令激活和停用这些行为
  • 在Sylius后台办公室中激活和停用行为
  • 在Sylius后台办公室中自定义您的消息
  • 允许搜索机器人访问以避免对SEO产生负面影响

Alt text

要求

安装

  1. 在您的composer.json文件中添加包及其依赖项

    composer require synolia/sylius-maintenance-plugin
  2. 在您的config/packages/_sylius.yaml文件中导入所需的配置

    imports:
        - { resource: "@SynoliaSyliusMaintenancePlugin/Resources/config/config.yaml" }
  3. 在您的config/routes.yaml文件中导入路由

    synolia_maintenance:
        resource: "@SynoliaSyliusMaintenancePlugin/Resources/config/admin_routing.yaml"
        prefix: '/%sylius_admin.path_name%'
  4. 清除缓存

    php bin/console cache:clear

用法

  • 要将您的网站设置为维护模式,请在项目根目录下创建一个名为 maintenance.yaml 的文件。

  • 如果您想要允许某些IP地址访问,请将这些IP地址添加到 maintenance.yaml
    例如

    ips: [172.16.254.1, 255.255.255.255, 192.0.0.255]

您可以通过控制台命令将您的网站设置为维护模式

  1. 启用插件

     php bin/console maintenance:enable
  2. 启用插件并添加一个或多个用空格分隔的IP地址

    php bin/console maintenance:enable 172.16.254.1 255.255.255.255 192.0.0.255
  3. 禁用插件

    php bin/console maintenance:disable
  4. 使用CLI删除配置文件

默认情况下,maintenance.yaml 配置文件在运行 maintenance:disable 或通过管理面板使用切换禁用时将保留。但是,通过传递选项 [-c|--clear] 到上述命令行将重置之前保存的配置

您还可以在后台办公室中设置您的网站为维护模式

  • 启用/禁用插件
  • 允许一个或多个IP地址访问(可选)
  • 允许秘密令牌访问(可选)
  • 创建您的自定义消息(可选)
  • 维护期间授予搜索机器人访问权限(可选)

如果您想将 maintenance.yaml 放入一个目录中,请将您的目录添加到 .env

例如

 SYNOLIA_MAINTENANCE_DIR=var/maintenance

如果您想在 maintenance.yaml 上添加缓存

# .env
SYNOLIA_MAINTENANCE_CACHE=30 # ttl in seconds

并在项目代码中(例如使用redis)

# config/packages/prod/cache.yaml
framework:
    cache:
        ...
        pools:
            ...
            synolia_maintenance.cache:
                adapter: cache.adapter.redis

开发

查看 如何贡献

许可证

此库受 EUPL-1.2许可证 的约束。

鸣谢

Synolia 开发。