codeq / linkchecker
在您的 Neos 项目中查找损坏和配置错误的链接
v3.1.0
2024-06-08 15:32 UTC
Requires
- php: ^8.1
- league/csv: ^9.1
- neos/neos: 7 - 8 || dev-master
- neos/swiftmailer: ^7.3.0
- psr/log: ^1.1 || ^2.0 || ^3.0
- sitegeist/fusionlinkprototypes: ^1.0
- spatie/crawler: ^8.0
- symfony/polyfill-php80: ^1.16
This package is auto-updated.
Last update: 2024-08-25 10:45:58 UTC
README
CodeQ.LinkChecker
使用这个易于使用的链接检查器保持您的 Neos 网站,使其无损坏链接
CodeQ.LinkChecker 确保您在 Neos 项目中的所有链接都能正常工作。它验证内部页面和资产引用、节点数据中的外部链接和电话号码,同时爬取所有渲染的页面,以确保没有隐藏的页面被遗漏!
后端模块允许您标记错误为已修复和忽略。编辑按钮将直接打开相关页面进行 Neos 内联编辑,以轻松修复问题。
链接检查器有以下方法来查找损坏的链接
- 后端模块可以验证所有节点属性中的所有内部页面链接
node://XXX
和资产asset://XXX
- 此外,它验证电话号码是否为国际格式(
+99 999999999
)
- 此外,它验证电话号码是否为国际格式(
- 命令控制器
./flow checklinks:crawl
将爬取在设置中配置的所有域和页面,并检查以下内容- 所有内部链接
node://XXX
是否指向可见页面(不是隐藏的,不是通过可见之前或可见之后隐藏的) - 所有电话号码是否为国际格式(
+99 999999999
) - 外部链接是否指向有效页面(http 状态码 2xx)
- 所有内部链接
- 命令控制器
./flow checklinks:crawlnodes
只验证内部链接、资产和电话号码 - 命令控制器
./flow checklinks:crawlexternallinks
将爬取网站并验证外部链接
安装
CodeQ.LinkChecker 通过 packagist 提供。运行 composer require codeq/linkchecker
。我们使用语义版本控制,因此每个重大更改都将增加主要版本号。
使用
在您的设置中配置链接检查器同步,如下所示
CodeQ: LinkChecker: # how many concurrent requests should the command controller perform # If set too high, you will DDoS your server concurrency: 10
确保域也已添加到“站点管理”中!
设置一个 cronjob,例如每天执行 ./flow checklinks:crawl
电子邮件报告
链接检查器还可以发送带有所有损坏链接列表的 csv 附件的电子邮件报告。要启用此功能,您需要配置电子邮件服务,如下所示
CodeQ: LinkChecker: notifications: enabled: true subject: 'Link checker results' minimumStatusCode: 300 mail: sender: default: name: 'Link Checker' address: 'no-reply@example.com' recipient: default: name: 'John Doe' address: 'recipient@example.com'
限制和可能的未来功能
- 支持其他语言
- 使用作业队列进行爬取
- 通过作业队列在页面发布后更新链接检查
- 将外部链接与恶意软件或安全顾问名单进行对比
- 找到所有指向内部页面的外部链接的实例
- 与拒绝名单(例如竞争对手名单)进行对比
- 检查其他工作空间中的损坏链接
许可证
GNU 通用公共许可证,请参阅许可证文件以获取更多信息。
赞助商 & 贡献
此插件的开发得到了Code Q的慷慨赞助。
此软件包基于 Unikka/LinkChecker
软件包,该软件包在查找所有损坏的外部链接方面做得很好。此软件包扩展了众多功能,提供新的用户界面,并引入了新的依赖项。
我们乐意接受贡献。请发送给我们拉取请求。