mares29/laravel-ip-filter

通过IP地址为Laravel过滤请求

1.2 2018-10-09 09:43 UTC

This package is not auto-updated.

Last update: 2024-09-24 11:39:35 UTC


README

此包为您的Laravel 5应用程序提供了一种简单的通过IP地址过滤用户访问的方法。

安装

通过Composer

$ composer require mares29/laravel-ip-filter

Laravel 5.5+ 会自动注册服务提供者并设置别名,多亏了自动发现功能。对于较低版本的Laravel,请将其添加到 app.php

'providers' => [
	\Mares29\Breadcrumb\FilterIpServiceProvider::class,
]

使用方法

导出过滤配置。

php artisan vendor:publish --provider="Mares29\IpFilter\FilterIpServiceProvider"

默认情况下,过滤仅在 生产环境 下激活,但您可以在配置文件中指定自己的设置。

	// Env - only use filter on listed environments
	'env' => ['production'],

使用 黑名单白名单 方法之一。例如,仅允许来自IP地址 127.0.0.1 的访问。

	// White list - List of allowed IP addresses
	'allowed' => [
		'127.0.0.1'
	],

	// Black list - List of denied IP addresses
	'denied' => [],

为所有您的Web路由添加中间件。

protected function mapWebRoutes()
    {
        Route::middleware('web')
             ->middleware('filterIp')
             ->namespace($this->namespace)
             ->group(base_path('routes/web.php'));
    }

或者仅针对特定路由。

Route::get('/', function () {
    return view('welcome');
})->middleware('filterIp');

致谢

许可

MIT许可(MIT)。请参阅许可文件以获取更多信息。