Skip to content

Commit

Permalink
Added cache-control tags to static content.
Browse files Browse the repository at this point in the history
  • Loading branch information
neochief committed Sep 12, 2018
1 parent 3964430 commit 49814c4
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 7 deletions.
14 changes: 8 additions & 6 deletions src/Builders/StaticCache.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,17 +22,19 @@ public function __construct()
*/
public function handleRequest(Request $request, Response $response)
{
if (config('app.debug', false)) return;
if (!auth()->guest()) return;
if (!$request->route()->parameter('cache', true)) return;
if ($request->method() != 'GET') return;
if ($request->query()) return;
if ($response->getStatusCode() != 200) return;
if (config('app.debug', false)) return false;
if (!auth()->guest()) return false;
if (!$request->route()->parameter('cache', true)) return false;
if ($request->method() != 'GET') return false;
if ($request->query()) return false;
if ($response->getStatusCode() != 200) return false;

$path = $request->path();
$content = $response->getContent();
$content_type = $response->headers->get('Content-Type');
$this->write($path, $content, starts_with($content_type, 'text/html'));

return true;
}

/**
Expand Down
8 changes: 7 additions & 1 deletion src/Middleware/StaticCache.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,14 @@ public function handle($request, Closure $next)

/* @var $staticCache \ShvetsGroup\JetPages\Builders\StaticCache */
$staticCache = app('jetpages.staticCache');
$staticCache->handleRequest($request, $response);
$result = $staticCache->handleRequest($request, $response);

if ($result && $response->isCacheable()) {
if ($response->getMaxAge() === null) {
$response->setExpires(new \DateTime("+1 hour"));
}
$response->setPublic();
}

return $response;
}
Expand Down

0 comments on commit 49814c4

Please sign in to comment.