Я использую Ларавель 5.6.
Я пытаюсь кэшировать свои файлы css/js. То, как я это делаю, использует промежуточное программное обеспечение.
public function handle($request, \Closure $next, $guard = null)
{
$request->header('Cache-Control', 'max-age=86400, public');
$request->header('X-www-test-header', 'test-value');
return $next($request);
}
И обертывание практически каждого маршрута в это промежуточное ПО. Это кажется очень плохой идеей с того места, где я стою, но, честно говоря, я не могу найти другого способа сделать это (любые предложения приветствуются). Но проблема не в этом.
Проблема в том, что мои заголовки не проходят.
Я также пытался установить заголовки через .htaccess.
<IfModule mod_headers.c>
<filesmatch "\.(ico|flv|jpg|jpeg|png|gif|css|swf)$">
Header set Cache-Control "max-age=2678400, public"
</filesmatch>
<filesmatch "\.(html|htm)$">
Header set Cache-Control "max-age=7200, private, must-revalidate"
</filesmatch>
<filesmatch "\.(pdf)$">
Header set Cache-Control "max-age=86400, public"
</filesmatch>
<FilesMatch "\.(js|css)$">
ExpiresActive On
ExpiresDefault "access plus 1 weeks"
</FilesMatch>
Это тоже не работает.
Я честно не уверен, в чем проблема. Либо laravel каким-то образом переписывает все заголовки, либо apache, либо что-то в этом роде.
Буквально любое указание в правильном направлении приветствуется.
add()
. - person waterloomatt   schedule 16.03.2018