gourmet / filters
Dispatcher filters (middlewares) for CakePHP 3
Installs: 2 803
Dependents: 0
Suggesters: 0
Security: 0
Stars: 9
Watchers: 3
Forks: 2
Open Issues: 2
Type:cakephp-plugin
Requires
- cakephp/cakephp: ~3.0
Requires (Dev)
- phpunit/phpunit: ~4.0
This package is auto-updated.
Last update: 2024-10-28 01:32:29 UTC
README
[](https://travis-ci.org/gourmet/filters [](https://packagist.org/packages/gourmet/filters
Dispatcher filters (middlewares) for CakePHP 3.
NOTE: This is the master
branch, latest stable is 1.0 branch.
Install
Using Composer:
composer require gourmet/filters:1.1.x-dev
You then need to load the plugin. In boostrap.php
, something like:
\Cake\Core\Plugin::load('Gourmet/Filters');
Usage
All the below examples happen in bootstrap.php
.
MaintenanceFilter
By default, this filter will look for the ROOT/maintenance.html
file and if it exists,
it will use it as the response.
DispatcherFactory::add('Gourmet/Filters.Maintenance');
You could customize the path like so:
DispatcherFactory::add('Gourmet/Filters.Maintenance', [ 'path' => '/absolute/path/to/maintenance/file.html' ]);
You could for example do echo 'Scheduled maintenance' > maintenance.html
and your site
will automatically be set to maintenance mode with the message 'Scheduled maintenance'.
IpFilter
Restrict access to spefic IPs and/or ban other.
DispatcherFactory::add('Gourmet/Filters.Ip', [ 'allow' => [ '127.0.0.1' ] ]);
or
DispatcherFactory::add('Gourmet/Filters.Ip', [ 'disallow' => [ '127.0.0.1' ] ]);
RobotsFilter
This one provides a default robots.txt
file for non-production environments. By default,
it checks the 'APP_ENV' environment variable and compares it's value to 'production'.
DispatcherFactory::add('Gourmet/Filters.Robots');
On all your non-production environments, robots.txt
will look like this:
User-Agent: *
Disallow: /
and your pages' headers will include the X-Robots-Tag
with 'noindex. nofollow, noarchive' flags.
You can customize all of that using the configuration keys: priority, when, key, value.
Patches & Features
- Fork
- Mod, fix
- Test - this is important, so it's not unintentionally broken
- Commit - do not mess with license, todo, version, etc. (if you do change any, bump them into commits of their own that I can ignore when I pull)
- Pull request - bonus point for topic branches
Bugs & Feedback
http://github.com/gourmet/filters/issues
License
Copyright (c) 2015, Jad Bitar and licensed under The MIT License.