lukasz-adamski / laravel-cloudflare
Laravel framework Service Provider to automatic loading IP ranges of Cloudflare trust proxies.
dev-master
2018-10-06 18:12 UTC
Requires
- php: >=5.6.4
- illuminate/support: ~5.0
This package is auto-updated.
Last update: 2025-05-08 22:33:38 UTC
README
The package is developed to provide Cloudflare trust proxies support for Laravel Framework requests. List of IP ranges used by Cloudflare can be found here: (https://www.cloudflare.com/ips/).
Installation
- Install composer package using command:
composer require lukasz-adamski/laravel-cloudflare
- Add Service Provider in
config/app.php
:
Adams\Cloudflare\CloudflareServiceProvider::class,
- Add middleware to your project in
app/Http/Kernel.php
. You can put this middleware where you want but if project is hosted with Cloudfare Reverse Proxy it is preferable to register it for all requests in$middleware
variable.
\Adams\Cloudflare\Moddleware\TrustProxies::class,
- Run artisan command to load fresh IPs from Cloudflare:
php artisan cloudflare:reload
Available commands
This package will not load Cloudflare IPs automatically. To do this you can use two registered commands:
cloudflare:reload
- this command loads list of current Cloudflare Proxy IPs and store in application cache forever,cloudflare:view
- this command show list of loaded IPs from Cloudflare.
Automatic reloading
If you want automatic refreshing of Cloudflare IP ranges you can schedule cloudflare:reload
command in your app. To do this open app/Console/Kernel.php
and modify schedule
function like this:
/** * Define the application's command schedule. * * @param \Illuminate\Console\Scheduling\Schedule $schedule * @return void */ protected function schedule(Schedule $schedule) { $schedule->command('cloudflare:reload') ->daily(); }