问题描述
您好如何在Laravel上访问1个静态IP的域?
我知道需要使用数组和$request->ip();
解决方法
您可以使用名为middleware的名称。它充当您的请求和控制器之间的隔离墙。中间件示例:
<?php
namespace App\Http\Middleware;
use Closure;
class FilterIps
{
const ALLOWED = [
'100.100.100.100',];
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request,Closure $next)
{
abort_unless(in_array($request->ip(),self::ALLOWED),403);
return $next($request);
}
}
激活它的示例方法是将其放在web
文件内$middlewareGroups
变量的app/Http/Kernel.php
数组中:
use App\Http\Middleware\FilterIps;
/**
* The application's route middleware groups.
*
* @var array
*/
protected $middlewareGroups = [
'web' => [
// ...
FilterIps::class,],// ...
];