Sha256: 2701c19e0c58a1678837470c9001e2be7db3a0b7458abef34858066df3f7d4e1
Contents?: true
Size: 962 Bytes
Versions: 1
Compression:
Stored size: 962 Bytes
Contents
require 'rack/mime' module Rack module SeoRedirect class Base def initialize app @app = app end private def request Rack::Request.new(@env) end def headers url { 'Location' => url, 'Content-Type' => ::Rack::Mime.mime_type(::File.extname(request.path), 'text/html') } end def redirect_message url "Redirecting to <a href='#{url}'>#{url}</a>" end def build_url options = {} options[:host] ||= request.host options[:path] ||= request.path url = "#{request.scheme}://#{options[:host]}" if request.scheme == "https" && request.port != 443 || request.scheme == "http" && request.port != 80 url << ":#{request.port}" end url << "#{options[:path]}" url << "?#{request.query_string}" unless request.query_string.empty? url end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rack-seo_redirect-0.0.1 | lib/rack/seo_redirect/base.rb |