freeq / redirector
轻松管理您的重定向。
1.0.1
2017-08-22 08:05 UTC
Requires
- php: >=7.1.0
- predis/predis: ^1.1
Requires (Dev)
- mockery/mockery: 0.9.*
- phpunit/phpunit: ~6.0
This package is not auto-updated.
Last update: 2024-09-29 05:54:24 UTC
README
重定向管理器
此软件包为您提供了一个简单的工具来重定向用户。您可以轻松管理一切。
安装
通过Composer
$ composer require freeq/redirector
使用
在您需要的地方使用此软件包。管理您的重定向的最佳方式是在Observer或其他事件监听器中运行它。您应该在数据库保存后存储重定向,在删除数据库记录后从存储中删除它们。每个重定向对象都应该实现Redirectable契约。
创建管理器
创建您的重定向管理器实例。它允许您存储/删除/刷新/获取数据。
use Freeq\Redirector\Manager; $redirect_object = Redirect::findById(1); // must implement Redirectable! // Using file driver. $storage = new FileStorage('/path/to/store/them'); $storage->setRedirect($redirect_object); $manager = new Manager($storage); // Using redis driver. $storage = new RedisStorage(new Predis\Client()); $storage->setRedirect($redirect_object); $manager = new Manager($storage); // Otherwise u can use StorageFactory. // $type is storage name (file or redis) // $source is path for FileStorage or Predis Client for RedisStorage $storage = StorageFactory::build($type, $source); $storage->setRedirect($redirect_object); $manager = new Manager($storage);
管理可重定向对象
存储对象
$manager->store();
删除它
$manager->delete();
刷新所有内容
$manager->flush();
为给定路由启动重定向
$manager->forward('my_route');
类
Freeq\Redirector\Manager- 允许您管理。Freeq\Redirector\StorageFactory- 根据传递给管理器构造函数的'类型'创建具体类。Freeq\Redirector\Storages\FileStorage- 允许您将重定向存储为小型文件的驱动器。Freeq\Redirector\Storages\RedisStorage- 允许您将重定向存储为redis记录的驱动器。
可重定向方法
实现Freeq\Redirector\Contracts\Redirectable的您的对象需要以下方法
routeFrom()- 应该重定向哪个路由。routeTo()- 您的重定向希望去哪里(例如,https://github.com)。statusHttp()- 使用特定的http状态(301或302)进行重定向。hash()- 与通过md5散列的routeFrom()类似的字符串。它是redis键或文件名。expireAt()- 返回重定向过期的日期。
贡献
有关详细信息,请参阅contributing.md。