omz13 / kirby3-wellknown
kirby3 插件以支持常用文件
Requires
- php: >=7.1
- getkirby/composer-installer: ^1.1
Requires (Dev)
- getkirby/cms: ^3.0.1
- jakub-onderka/php-parallel-lint: ^1.0
- localheinz/composer-normalize: ^1.0.0
- omz13/omz13-coding-standard: dev-master
- phpcompatibility/php-compatibility: ^8.2
- phpmd/phpmd: ^2.6
- phpstan/phpstan: ^0.10.3
- phpstan/phpstan-strict-rules: ^0.10.1
- roave/security-advisories: dev-master
This package is auto-updated.
Last update: 2022-12-19 01:14:32 UTC
README
要求: Kirby 3 (3.0 RC2 或更高版本)
咖啡,啤酒等
这个插件最初很简单。想法是提供一个设置一些驻留在 .well-known
文件夹中的文本文件的好方法。在开发过程中,我花费了无数个小时深入研究可能存在于那里的不同文件的规范。我故意保持这个插件简单,并希望您确实使用它,因为提供这些常用文件是件好事。在底层,它有一些复杂的代码来使用户体验更加容易。它还生成了 /robots.txt
,因为我只是需要一个理由来整合我的 omz13/kirby3-xmlsitemap 插件。它还内置了一个蓝图,因为我想要浪费几个小时的时间让它工作(而且我仍然不确定为什么花了那么长时间:也许我根本不知道我在做什么,最终偶然在代码中找到了魔法咒语?Bastian 在 Kirby 中修复了什么?我的 MAMP 设置错误了吗?没关系,因为现在它真的工作了,真的很有趣。现在,由于我调整了我的代码编辑器(Atom)的拼写检查,README 中已经没有拼写错误了。
此插件免费,但如果您将其用于商业项目以表示支持,您将受到欢迎
文档
目的
对于 kirby3 网站,此插件 omz13/wellknown 允许轻松配置和提供 常用 和其他非常有用的文件(例如 robots.txt
)
您何时会使用此插件?
- 提供 .well-known/security.txt
- 提供 dnt-policy,例如 .well-known/dnt-policy
- 提供 .well-known/humans.txt
- 提供
.well-known
文件夹中的任何其他(基于文本)文件。 - 提供 /robots.txt。
功能规范
- 常用文件的 内容按优先级从配置文件(例如
site/config/config.php
)或content/site.txt
中的字段中获取。 robots.txt
文件的内容将自动生成(即与 omz13/kirby3-xmlsitemap 交互)并添加到其他任何您想要的内容之前。
路线图
计划功能和实现说明的非约束性列表如下
- 最小可行产品(MVP)
- favicon
- 蓝图
- 仅调试模式下调试头部信息
安装
根据您的知识模型选择以下之一
composer require omz13/kirby3-wellknown
;插件将自动出现在site/plugins
目录下。- 下载最新版本的zip包 - master.zip - 并将其内容复制到您的
site/plugins/kirby3-wellknown
目录。 git submodule add https://github.com/omz13/kirby3-wellknown.git site/plugins/kirby3-wellknown
.
配置
以下机制可用于修改插件的行为。
通过 site/config/config.php
-
omz13.wellknown.disable
- 可选 - 默认false
- 一个布尔值,如果为true
,则禁用插件。 -
omz13.wellknown.notfound
- 可选 - 默认true
- 一个布尔值,如果为true
,则使插件对任何未配置的文件的请求响应一个简单的404
,而不是默认的kirby错误页面。 -
omz13.wellknown.not-txt-notfound
- 可选 - 默认true
- 一个布尔值,如果为true
,则使插件对任何以.well-known\file.ext
开头的请求响应一个简单的404
,而不是默认的kirby错误页面,其中ext不是txt
。 -
omz13.wellknown.fromSite
- 可选 - 默认false
- 一个布尔值,如果为true
,则导致从站点文件(由面板通过blueprint/site.yml
设置的content/Site.txt
)获取的内容优先于配置文件(site/config/config.php
)中的内容。哇,这很复杂。换句话说,如果这是true
,用户可以在面板中指定内容,但如果为false
,内容只能在配置文件中指定(在您不希望用户更改设置的情况下)。 -
omz13.wellknown.the-XXXX
- 可选 - 一个字符串,为.well-known/XXXX.txt
的请求提供内容(或the-robots
对于/robots.txt
)。注意,破折号被忽略(例如,dnt-policy
将指定为omz13.wellknown.the-dntpolicy
)。此外,执行行扩展(即,任何\n
的出现都将被替换为换行符)。 -
omz13.wellknown.x-ping
- 可选 - 如果为true
,则任何对/.well-known/ping.txt
的请求将返回一个非常无聊且平凡的响应pong
。为什么你会使用这个?因为它是一个非常棒的端点,可以用来测试您的网站是否活着。
content/site.txt
中的内容字段(通过蓝图 blueprint/site.yml
)
插件使用以下内容字段。这些都是可选的;如果缺失或为空,则假定它们与其指示的功能不相关。
wellknownXXXX
- 文本 - 可选 - 为已知文件XXXX.txt
提供的内容。注意,破折号被忽略(例如,已知文件dnt-policy.txt
将指定为字段wellknowndntpolicy
。)
蓝图
此插件提供以下内置蓝图(例如,为了使向面板的蓝图 blueprint/site.yml
添加字段更简单)
omz13/wellknown
- 应用于extends
中,以便于输入robots.txt
、security.txt
、dnt-policy.txt
和humans.txt
等文件的数据,使操作尽可能简单。
HeadlineWellKnown: type: headline label: well-known numbered: false TheWellKnown: extends: omz13/wellknown
提示:如果您想查看此模板的内容,请查看 blueprints
文件夹下的源代码。
使用方法
-
按照以上配置。
-
使用网页浏览器或其他工具访问已知的文件。
-
如果一切正常,请参考上方的 咖啡,啤酒等。
-
如果不起作用...提交一个问题,我会在解决问题的过程中撞墙;或者我可能只是闷闷不乐,喝一杯浓咖啡,然后解决问题。
-
惊讶于我的 README 文件每次推送到仓库时都会变得更有趣或更无趣;因人而异。
调试模式
如果 kirby 网站处于调试模式
- 对任何已知文件的页面请求将包含一个
x-omz13-wk
标头,其中包含调试信息。
免责声明
此插件提供“原样”使用,不提供任何保证。请在自己的风险下使用它,并在将其用于生产环境之前自行测试。如果您发现任何问题,请 创建一个新问题。