>  기사  >  php教程  >  Laravel의 스로틀 미들웨어 오류 문제에 대한 솔루션

Laravel의 스로틀 미들웨어 오류 문제에 대한 솔루션

高洛峰
高洛峰원래의
2016-12-27 11:46:351777검색

이 기사의 예에서는 Laravel의 스로틀 미들웨어 오류 문제를 해결하는 방법을 설명합니다. 참고하실 수 있도록 자세한 내용은 다음과 같습니다.

공식 설명에 따르면 접속 빈도 제한 구현은 매우 간단합니다.

Route::get('test', function(){
  return 'helle world' ;
})->middleware('throttle');

맞습니다. 이렇게 캐시가 접속 횟수를 저장하고 판단을 내립니다.

이전에는 zizaco/entrust(역할 기반 권한 관리 패키지)를 사용했는데, .env의 CACHE_DRIVER=file을 CACHE_DRIVER=array로 변경했습니다. 그래서 문제가 발생합니다. Laravel은 File, Array, Db, Redis 등을 포함한 여러 캐시 드라이버를 지원하지만 조절은 파일 유형 드라이버를 사용할 때만 효과적인 것 같습니다.

내가 수정한 내용은 다음과 같습니다.

vendor/illuminate/cache/RateLimiter.php 파일

public function __construct(Cache $cache)
{
    $this->cache = $cache;
}
public function __construct()
{
    $this->cache = app('cache')->driver('file');
}

Put 위의 내용을 다음과 같이 변경하면 됩니다. 스로틀 미들웨어도 작동합니다.

Laravel의 스로틀 미들웨어 오류 문제 해결과 관련된 더 많은 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.