Sinatra 可选的设置
2023-12-20 15:43 更新
- absolute_redirects:如果被禁用,Sinatra 会允许使用相对路径重定向,但是,Sinatra 就不再遵守 RFC 2616 标准 (HTTP 1.1), 该标准只允许绝对路径重定向。如果你的应用运行在一个未恰当设置的反向代理之后,你需要启用这个选项。注意 url 辅助方法 仍然会生成绝对 URL,除非你传入 false 作为第二参数。默认禁用。
-
add_charsets
:设定 content_type
辅助方法会 自动加上字符集信息的多媒体类型。应该添加而不是覆盖这个选项:settings.add_charsets << "application/foobar"
- app_file:主应用文件,用来检测项目的根路径,views 和 public 文件夹和内联模板。
- bind:绑定的 IP 地址 (默认:0.0.0.0)。仅对于内置的服务器有用。
- default_encoding:默认编码 (默认为 "utf-8")。
- dump_errors:在 log 中显示错误。
- environment:当前环境,默认是 ENV['RACK_ENV'],或者 "development" 如果不可用。
- logging:使用 logger
- lock:对每一个请求放置一个锁,只使用进程并发处理请求。如果你的应用不是线程安全则需启动。默认禁用。
-
method_override
:使用 _method 魔法以允许在旧的浏览器中在 表单中使用 put/delete 方法 - port:监听的端口号。只对内置服务器有用。
-
prefixed_redirects
:是否添加 request.script_name 到 重定向请求,如果没有设定绝对路径。那样的话 redirect '/foo' 会和 redirect to('/foo') 起相同作用。默认禁用。 - public_folder:public 文件夹的位置。
- reload_templates:是否每个请求都重新载入模板。在 development mode 和 Ruby 1.8.6 中被企业(用来 消除一个 Ruby 内存泄漏的 bug)。
- root:项目的根目录。
- raise_errors:抛出异常(应用会停下)。
- run:如果启用,Sinatra 会开启 web 服务器。如果使用 rackup 或其他方式则不要启用。
- running:内置的服务器在运行吗?不要修改这个设置!
- server:服务器,或用于内置服务器的列表。默认是 [‘thin’, ‘mongrel’, ‘webrick’], 顺序表明了 优先级。
- sessions:开启基于 cookie 的 sesson。
- show_exceptions:在浏览器中显示一个 stack trace。
- static: Sinatra 是否处理静态文件。当服务器能够处理则禁用。禁用会增强性能。默认开启。
-
static_cache_control
:但 Sinatra 处理静态文件时,设置该选项会在响应头信心中添加 Cache-Control
头信息,并且可以使用 cache_control
辅助方法 (默认禁用)。设置多个值时,使用显式数组:set :static_cache_control, [:public, :max_age => 300]
- threaded: 设置为
true
,则通知 EventMachine.defer
处理请求 - traps:是否处理系统信号
- views: views 文件夹。如果没有设置,则根据
app_file
中的设置。 -
x_cascade
:如果没有匹配路由,是否设置X-Cascade
。
以上内容是否对您有帮助:
更多建议: