Catalyst::Plugin::Static::Simple: Always send the Expires header
Otherwise Firefox will get confused.
This commit is contained in:
parent
d2b6645e82
commit
f7e619617e
@ -2,14 +2,24 @@ Send an ETag header, and honour the If-None-Match request header
|
|||||||
|
|
||||||
diff -ru -x '*~' Catalyst-Plugin-Static-Simple-0.30-orig/lib/Catalyst/Plugin/Static/Simple.pm Catalyst-Plugin-Static-Simple-0.30/lib/Catalyst/Plugin/Static/Simple.pm
|
diff -ru -x '*~' Catalyst-Plugin-Static-Simple-0.30-orig/lib/Catalyst/Plugin/Static/Simple.pm Catalyst-Plugin-Static-Simple-0.30/lib/Catalyst/Plugin/Static/Simple.pm
|
||||||
--- Catalyst-Plugin-Static-Simple-0.30-orig/lib/Catalyst/Plugin/Static/Simple.pm 2012-05-04 18:49:30.000000000 +0200
|
--- Catalyst-Plugin-Static-Simple-0.30-orig/lib/Catalyst/Plugin/Static/Simple.pm 2012-05-04 18:49:30.000000000 +0200
|
||||||
+++ Catalyst-Plugin-Static-Simple-0.30/lib/Catalyst/Plugin/Static/Simple.pm 2013-02-25 18:05:08.466813337 +0100
|
+++ Catalyst-Plugin-Static-Simple-0.30/lib/Catalyst/Plugin/Static/Simple.pm 2013-02-25 22:57:18.667150181 +0100
|
||||||
@@ -187,11 +187,21 @@
|
@@ -187,16 +187,27 @@
|
||||||
my $type = $c->_ext_to_type( $full_path );
|
my $type = $c->_ext_to_type( $full_path );
|
||||||
my $stat = stat $full_path;
|
my $stat = stat $full_path;
|
||||||
|
|
||||||
+ # Tell Firefox & friends its OK to cache, even over SSL:
|
- $c->res->headers->content_type( $type );
|
||||||
|
- $c->res->headers->content_length( $stat->size );
|
||||||
|
- $c->res->headers->last_modified( $stat->mtime );
|
||||||
|
# Tell Firefox & friends its OK to cache, even over SSL:
|
||||||
|
- $c->res->headers->header('Cache-control' => 'public');
|
||||||
+ #$c->res->headers->header('Cache-control' => 'public');
|
+ #$c->res->headers->header('Cache-control' => 'public');
|
||||||
+
|
+
|
||||||
|
+ $c->res->headers->last_modified( $stat->mtime );
|
||||||
|
# Optionally, set a fixed expiry time:
|
||||||
|
if ($config->{expires}) {
|
||||||
|
$c->res->headers->expires(time() + $config->{expires});
|
||||||
|
}
|
||||||
|
|
||||||
+ if ($config->{send_etag}) {
|
+ if ($config->{send_etag}) {
|
||||||
+ my $etag = '"' . $stat->mtime . '-' . $stat->ino . '-'. $stat->size . '"';
|
+ my $etag = '"' . $stat->mtime . '-' . $stat->ino . '-'. $stat->size . '"';
|
||||||
+ $c->res->headers->header('ETag' => $etag);
|
+ $c->res->headers->header('ETag' => $etag);
|
||||||
@ -19,11 +29,9 @@ diff -ru -x '*~' Catalyst-Plugin-Static-Simple-0.30-orig/lib/Catalyst/Plugin/Sta
|
|||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
$c->res->headers->content_type( $type );
|
+ $c->res->headers->content_type( $type );
|
||||||
$c->res->headers->content_length( $stat->size );
|
+ $c->res->headers->content_length( $stat->size );
|
||||||
$c->res->headers->last_modified( $stat->mtime );
|
+
|
||||||
- # Tell Firefox & friends its OK to cache, even over SSL:
|
my $fh = IO::File->new( $full_path, 'r' );
|
||||||
- $c->res->headers->header('Cache-control' => 'public');
|
if ( defined $fh ) {
|
||||||
# Optionally, set a fixed expiry time:
|
binmode $fh;
|
||||||
if ($config->{expires}) {
|
|
||||||
$c->res->headers->expires(time() + $config->{expires});
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user