Sha256: ad162047ea8eec28160c0d9919216c7c7437bf05e55348d56452e4dc2725743f

Contents?: true

Size: 522 Bytes

Versions: 29

Compression:

Stored size: 522 Bytes

Contents

module Middleman
  module Rack
    class Static
      def initialize(app, options={})
        @app = app
        root = Middleman::Base.public
        @file_server = ::Rack::File.new(root)
      end

      def call(env)
        path = env["PATH_INFO"]
        file_path = File.join(Middleman::Base.public, path)
        if path.include?("favicon.ico") || (File.exists?(file_path) && !File.directory?(file_path))
          @file_server.call(env)
        else
          @app.call(env)
        end
      end
    end
  end
end

Version data entries

29 entries across 29 versions & 1 rubygems

Version Path
middleman-0.11.5 lib/middleman/rack/static.rb
middleman-0.11.4 lib/middleman/rack/static.rb
middleman-0.11.3 lib/middleman/rack/static.rb
middleman-0.11.2 lib/middleman/rack/static.rb
middleman-0.11.1 lib/middleman/rack/static.rb
middleman-0.11.0 lib/middleman/rack/static.rb
middleman-0.10.17 lib/middleman/rack/static.rb
middleman-0.10.16 lib/middleman/rack/static.rb
middleman-0.10.15 lib/middleman/rack/static.rb
middleman-0.10.14 lib/middleman/rack/static.rb
middleman-0.10.13 lib/middleman/rack/static.rb
middleman-0.10.12 lib/middleman/rack/static.rb
middleman-0.10.11 lib/middleman/rack/static.rb
middleman-0.10.10 lib/middleman/rack/static.rb
middleman-0.10.9 lib/middleman/rack/static.rb
middleman-0.10.8 lib/middleman/rack/static.rb
middleman-0.10.7 lib/middleman/rack/static.rb
middleman-0.10.6 lib/middleman/rack/static.rb
middleman-0.10.5 lib/middleman/rack/static.rb
middleman-0.10.4 lib/middleman/rack/static.rb