phptek/silverstripe-exodus
Composer 安装命令:
composer require phptek/silverstripe-exodus
包简介
Full automated content migration from any site into Silverstripe.
关键字:
README 文档
README
Introduction
Exodus is a content migration tool that follows the ETL standard (Extract Transform Load). It will consume content from virtually any website, regardless of its underlying CMS technology and import it as native content objects (SiteTree, File etc) into a Silverstripe instance.
Exodus crawls the source website's DOM and caches matching URLs to the local filesystem. It will then normalise page-URLs by stripping file-extensions, slashes and implementation-specific strings and run a site-scrape which imports content as native Silverstripe objects into your site-tree and assets hierarchy.
Please See the docs index.
How it works
Extract is analogous to the module's "Crawl" mode. Given a URL, the tool will crawl the target website and cache a collection of matching URLs to the local filesystem.
Transform is the process of normalising the URLs cached in crawl mode and which are unique to the source system (Drupal, Wordpress or Plone). This is automatic and occurs with the selection made in the main "URL Processing" selection. This may be trial and error until the crawl process completes.
Load is analogous to the module's "Import" mode and is where the hard work of tweaking your crawl settings pays off, allowing you to import the content located at each cached URL into your site-tree and assets store.
Please See the docs index.
Migration
Please See the migration docs.
Requirements
- PHP ^7||^8
Installation
composer require --dev phptek/silverstripe-exodus
You'll need to setup PHP to allow for long-running processes. Depending on the number of URLs in the target site which need to be crawled, and your configuration, you may be looking at upwards of 20-30m. Therefore configure the following, depending on your setup:
# Tell PHP itself to allow for long-running processes in php.ini
max_execution_time 72000
# Tell php-fpm to not stop reading after 20m in nginx.conf
fastcgi_read_timeout 72000;
# Tell php-fpm to increase the no. of available child process up from the default of 5 in www.conf
pm.max_children = 25
Please see the included Migration document which describes exactly how to configure the tool to perform a content migration.
Please also see the rest of the docs.
History
This module was originally written in 2012 by then Silverstripe Ltd CEO Sam Minnee and was known as the "Static Site Connector" module. It was used successfully on dozens of occassions to import content for new Silverstripe projects being built by the company at that time and was subsequently improved upon over the years by other Silverstripe employees.
Around 2015-2016 the module was archived by Sam and subsequently picked-up and improved by Russell Michell.
In 2022 Russell saw a need for the tool again for an upcoming gig and modified it once again to work with Silverstripe v4.
Contributers
In order of no. commits:
Credit also goes to Marcus Nyholt for the use of the External Content module on top of which Exodus itself is built. The module in its current state actually includes the nyeholt/silverstripe-external-content package and bakes it in as a sub-directory rather than using Composer.
...it was just easier that way.
Support Me
If you like what you see, support me! I accept Bitcoin:
|
|
| 3KxmqFeVWoigjvXZoLGnoNzvEwnDq3dZ8Q |
phptek/silverstripe-exodus 适用场景与选型建议
phptek/silverstripe-exodus 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 33 次下载、GitHub Stars 达 3, 最近一次更新时间为 2022 年 08 月 09 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「import」 「connect」 「migration」 「transform」 「scraper」 「content」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 phptek/silverstripe-exodus 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 phptek/silverstripe-exodus 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 phptek/silverstripe-exodus 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Customize JWT claims in Laravel Passport access tokens
Parse use statements for a reflection object
Tool for copying data from a production database to a dev database. Also useful for making backups of production databases.
A fork of konnco/filament-import with support of Laravel 11 since the default importer of Filament 3 is nonsense for basic use case.
Lets you add foreign keys in a swift! Foreign key adder in laravel migration.
Official PHP SDK for Okta Connect — the omnichannel messaging platform (WhatsApp, email, social publishing, campaigns).
统计信息
- 总下载量: 33
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 3
- 点击次数: 16
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: BSD-3-Clause
- 更新时间: 2022-08-09
