diff options
Diffstat (limited to 'actionpack/lib/action_dispatch')
-rw-r--r-- | actionpack/lib/action_dispatch/middleware/static.rb | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/actionpack/lib/action_dispatch/middleware/static.rb b/actionpack/lib/action_dispatch/middleware/static.rb index c5598f3e56..5076567bd4 100644 --- a/actionpack/lib/action_dispatch/middleware/static.rb +++ b/actionpack/lib/action_dispatch/middleware/static.rb @@ -2,16 +2,11 @@ require 'rack/utils' module ActionDispatch class FileHandler - attr_reader :ext - def initialize(at, root) @at, @root = at.chomp('/'), root.chomp('/') @compiled_at = /^#{Regexp.escape(at)}/ unless @at.blank? @compiled_root = /^#{Regexp.escape(root)}/ @file_server = ::Rack::File.new(@root) - - ext = ::ActionController::Base.page_cache_extension - @ext = "{,#{ext},/index#{ext}}" end def match?(path) @@ -32,6 +27,13 @@ module ActionDispatch def call(env) @file_server.call(env) end + + def ext + @ext ||= begin + ext = ::ActionController::Base.page_cache_extension + "{,#{ext},/index#{ext}}" + end + end end class Static |