首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在puma (使用rails 5)中,默认的header Cache-Control值来自哪里?

在puma中,默认的header Cache-Control值来自于Rails应用程序的配置。具体来说,它来自于Rails应用程序中的config.public_file_server.headers配置项。

在Rails 5中,可以在config/environments/production.rb文件中找到该配置项。默认情况下,该配置项的值为:

代码语言:txt
复制
config.public_file_server.headers = {
  'Cache-Control' => "public, max-age=#{2.days.to_i}"
}

这意味着在生产环境中,puma会将Cache-Control头设置为public, max-age=172800,即缓存文件的最大有效期为2天。

这个默认的header Cache-Control值的作用是控制浏览器对静态文件的缓存行为。通过设置合适的缓存策略,可以提高网站的性能和加载速度。

推荐的腾讯云相关产品和产品介绍链接地址:

  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云CDN加速:https://cloud.tencent.com/product/cdn
  • 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云云原生容器服务(TKE):https://cloud.tencent.com/product/tke
  • 腾讯云数据库(TencentDB):https://cloud.tencent.com/product/cdb
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

使用Capistrano,Nginx和PumaUbuntu 14.04上部署Rails应用程序

文件包含一些初始情况下默认设置,可帮助您管理应用程序版本并在进行部署时自动执行某些任务: 使用production作为Rails应用程序默认环境 自动管理应用多个版本 使用优化SSH选项 检查您...git遥控器是否是最新 管理您应用日志 管理Puma工作人员时将应用程序预加载到内存 完成部署后启动(或重新启动)Puma服务器 发行版特定位置打开Puma服务器套接字 您可以根据需要更改所有选项...Cache-Control public; } try_files $uri/index.html $uri @puma; location @puma { proxy_set_header...10M; keepalive_timeout 10; } 与前一个文件一样,它nginx.conf包含默认与deploy.rb文件配置一样立即可用。...这会侦听端口80上流量并将请求传递给您Puma套接字,将nginx日志写入应用程序“当前”版本,压缩所有资产并在浏览器中将其缓存到最大到期时间,公共场合提供HTML页面文件夹作为静态文件,并设置默认最大

5K40

Spring Security 5如何使用默认Password Encoder

概览 Spring Security 4,可以使用in-memory认证模式直接将密码以纯文本形式存储。...Spring Security 5,密码管理机制进行了一次大修改,默认引入了更安全加/解密机制。...这意味着,如果您Spring应用程序使用纯文本方式存储密码,升级到Spring Security 5后可能会出现问题。 在这个简短教程,我们将描述其中一个潜在问题,并演示如何解决。 2....Encoder,但建议使用PasswordEncoderFactories类提供默认编码器。...总结 在这个简短例子,我们使用密码存储机制将一个Spring 4下使用了in-memory 认证模式配置升级到了Spring 5。 与往常一样,您可以GitHub上查看源代码。

1.4K10
  • Rails 部署总结

    Nginx 安装好之后,你可以通过浏览器中直接输入 IP 检测,默认会有一个欢迎页。 部署过程 通过 Git 获取其他方式将代码拉取到服务器之后,接下来就是配置数据库文件并创建数据库了。...$ rails new testapp -d mysql 然后将配置文件 database.yml socket 字段配置信息拷贝到自己代码。...$ rails s Rails 5 第一条拉起命令会出错,错误提示如: initialize': Cannot assign requested address - bind(2) for "IP..." 这是因为 Rails 5 已经是 IP V6 Only,而腾讯云默认是不开启,所有需要我们手动修改设置。...$ sudo restart puma-manager 然后你就可以浏览器通过 IP:3000 访问到程序了,接下来就是设置 Nginx 了。

    6.9K50

    使用SSH隧道保护三层Rails应用程序通信

    Ruby on Rails应用程序,它可以轻易地映射到表示层Web服务器,应用程序层Rails服务器和数据层数据库。...本教程,您将在三层配置中部署Rails应用程序,方法是在三个单独服务器上安装一组唯一软件,配置每个服务器及其组件以进行通信和协同工作,并使用SSH隧道保护它们之间连接。...请注意,安装rbenv-vars插件部分,必须设置数据库用户和密码以反映在 数据库服务器 上安装PostgreSQL时使用。...同样,如果入侵者要获得对 隧道 用户访问权限,他们既不能编辑Rails应用程序目录文件,也不能使用sudo命令。 每台服务器上,创建一个名为 tunnel 其他用户。...一旦您确认您Rails应用程序由Puma提供并且已正确配置为 数据库服务器 上使用远程PostgreSQL实例,您就可以继续 Web服务器 和 应用服务器 之间设置SSH隧道。

    5.7K30

    如何在Ubuntu 14.04上使用Git Hooks部署Rails应用程序

    介绍 本教程,我们将向您展示如何使用Git hooks自动将Rails应用程序生产环境部署到远程Ubuntu 14.04服务器。...准备 您将需要访问Ubuntu服务器上具有超级用户权限非root用户。我们教程设置,我们将使用一个名为deploy用户。如果要在不输入密码情况下进行部署,请务必设置SSH密钥。...您还需要一个本地开发机器上git存储库管理Rails应用程序。如果您没有并希望跟进,我们将提供一个简单示例应用程序。 让我们开始吧!...您可以使用此命令轻松地服务器上执行此操作: grep -c processor /proc/cpuinfo 现在,开发计算机上,config/puma.rb添加Puma配置。...使用apt-get安装Nginx: sudo apt-get install nginx 现在使用文本编辑器打开默认服务器块: sudo vi /etc/nginx/sites-available/default

    2.5K60

    GitLab 14 轻量化运行方案

    观察默认配置启动应用 安装完毕 Docker 环境后,可以使用下面的配置,不进行任何应用设置情况下,启动应用: version: "3" services: gitlab: image...GitLab 默认提供了软件包仓库、容器仓库、软件依赖管理,这些可以使用我之前分享过使用容器搭建简单可靠容器仓库》一文 distribution,或者 Nexus 进行替代。...['terraform_state_enabled'] = false # Kerberos 文档说EE only,但是默认为 true gitlab_rails['kerberos_enabled'...、GitLab 默认配置模版,对于这个服务资料和默认存在多处冲突和错误,以及存在未文档声明配置,处于一个“黑盒状态”。...早些时候《容器方式使用轻量 GitLab 低版本》 一文,我分享过如何使用低版本 GitLab ,那篇文章 GitLab 进程树状况如下。

    4.7K21

    GitLab 14 轻量化运行方案

    观察默认配置启动应用 安装完毕 Docker 环境后,可以使用下面的配置,不进行任何应用设置情况下,启动应用: version: "3" services: gitlab: image...GitLab 默认提供了软件包仓库、容器仓库、软件依赖管理,这些可以使用我之前分享过使用容器搭建简单可靠容器仓库》一文 distribution,或者 Nexus 进行替代。...['terraform_state_enabled'] = false # Kerberos 文档说EE only,但是默认为 true gitlab_rails['kerberos_enabled'...、GitLab 默认配置模版,对于这个服务资料和默认存在多处冲突和错误,以及存在未文档声明配置,处于一个“黑盒状态”。...早些时候《容器方式使用轻量 GitLab 低版本》 一文,我分享过如何使用低版本 GitLab ,那篇文章 GitLab 进程树状况如下。

    2.9K40

    使用 Mastodon 搭建个人信息平台:调优篇

    在后台页面的侧边栏中选择“管理”,就可以看到展示应用当前运行状况信息面板啦。 Mastodon 默认运行状况 图片中我们可以看到“服务器配置”“全文搜索”目前是关闭着。...如果你在上传资源时候使用是 HTTP 协议,那么在请求资源时候,也会默认使用相同协议。...Rails.configuration.x.use_s3 || Rails.configuration.x.use_swift end 同样,我们使用命令将容器程序文件拷贝到本地: docker...Web 服务是 Puma默认启动后,查看日志我们可以看到进程使用情况: [9] Puma starting in cluster mode... [9] * Puma version: 5.3.2...如果你实在介意默认并发数量,可以 mastodon/config/sidekiq.yml 配置文件调整数值到你期望程度(默认资源占用其实也不高)。

    2.4K11

    搭建和部署GitLab代码托管平台,自己CICD堡垒

    一个仓库上去效果:图片初始化GitLab默认GitLab配置文件地址:/etc/gitlab/config/gitlab.rb当然,你也可以使用Gitlab自带gitlab-rails进行管理。...这样,就可以登录成功了:图片如果你过了24小时,那么上述获取默认密码方式可能会失效,你可以进行更改:# 登录容器内docker exec -it gitlab bash# 启动gitlab-rails...More当然,更多配置你也可以配置文件内实现,比如我们使用8822映射了容器内22SSH端口。这样前台使用SSH模板克隆有点不方便,如何让它显示8822呢?...配置文件内追加:gitlab_rails['gitlab_shell_ssh_port'] = 8822之后重新配置即可。...如果你希望GitLab占用资源少一点,你可以现在线程:# 现在puma线程数puma['worker_processes'] = 2puma['min_threads'] = 2puma['max_threads

    4.1K31

    Ruby 应用容器封装踩坑记录(Lobsters)

    其实最初镜像文件,其实默认就会使用 gem 安装最新兼容 bundler。...容器镜像文件我们有定义 bundle install --no-cache,所以这里错误提示后建议内容是不准确,推测这里问题是缺失 rake 依赖包,镜像文件添加命令,对其进行安装。...官方博客文章,有提到“The bug is fixed in RubyGems 2.7.10 or 3.0.0 and above”,理论来说我们使用是 2.7.x 版本最新镜像,应该是不会出现这个问题...,因为 2.7.0 镜像容器执行 bundle list 会发现当前环境已经能够根据我们文件声明正确安装依赖了: bundle list | grep puma * capistrano3-puma...如果你也使用阿里云,则需要先登陆管理后台,再登陆数据库后台对指定用户进行授权,默认云控制台做太简单了,不能完成需求。

    4.8K00

    Ruby 应用容器封装踩坑记录(Lobsters)

    其实最初镜像文件,其实默认就会使用 gem 安装最新兼容 bundler。 ......容器镜像文件我们有定义 bundle install--no-cache,所以这里错误提示后建议内容是不准确,推测这里问题是缺失 rake 依赖包,镜像文件添加命令,对其进行安装。...官方博客文章,有提到“The bug is fixed in RubyGems 2.7.10 or 3.0.0 and above”,理论来说我们使用是 2.7.x 版本最新镜像,应该是不会出现这个问题...,因为 2.7.0 镜像容器执行 bundle list 会发现当前环境已经能够根据我们文件声明正确安装依赖了: bundle list | grep puma * capistrano3...如果你也使用阿里云,则需要先登陆管理后台,再登陆数据库后台对指定用户进行授权,默认云控制台做太简单了,不能完成需求。

    7.4K10

    旧安卓机别扔了!自制 Web 服务器了解一下

    每年都有大量电子垃圾被扔掉,发达国家,平均每个人每隔几年都要扔掉一台手机,而废弃手机是最大电子垃圾来源。 我有一台角落兜灰旧摩托罗拉G5 Cedric,所以我决定用它来做点什么。...现在,我利用它运行一个Puma Web服务器,上面跑着一个简单Sinatra应用。 进一步介绍之前,你也许会想:这有什么实际用途吗?...当然,Sinatra和Puma只是建议,你甚至可以在手机上运行完整Rails应用程序。只要别使用默认Rails开发服务器WEBRick就行,它只有单进程、单线程,因此不适合生产环境。...配置,我将其改成了 /data/data/com/termux/files/home/android-sinatra。...负载测试 你可以用siege这个HTTP负载测试软件来模拟真实世界使用情况。

    2.9K40

    插件使用详解

    插件原理很简单,它自己启动了一个ruby服务器,用于接收Http请求。然后会把host(IP地址)和header相关信息添加到event。 下面就看看这个插件如何使用吧!...additional_codecs 配置文本类型和codec映射,如上面所示,默认配置了json文本对应使用jsoncodec。...codec 如果上面的映射集合找不到文本类型对应codec,那么会默认按照这个属性配置codec解析。 ssl 是否开启SSL。...如果想要使用,再去参考文档吧! 源码初探 阅读插件源码是为了更好理解插件使用,并且在出错时候知道哪里出现了问题。Logstash插件往往都有固定书写格式,因此很容易看到插件核心代码。...Input插件,主要包含两个方法: public def register # register方法相当于初始化构造方法 end # def register # 主要核心业务方法都在

    2.6K80

    自托管代码平台Gitlab | 搭建使用教程

    省流:4C4G起步上不封顶,硬盘越大越好 2.2存储 必要硬盘空间很大程度上取决于您想在极狐GitLab 存储仓库大小,但作为准则,您应该至少拥有与所有仓库组合占用空间一样多可用空间。...如果您可用内存发生变化,swap 可帮助您减小错误发生概率。我们也建议您将内核 swappiness 设置为低,例如 10,充分利用 RAM 同时,使 swap 需要时可用。...所有极狐GitLab 数据将存储 $GITLAB_HOME 子目录。系统重启后,容器将自动 restart。 初始化过程可能需要很长时间。...新建完成仓库以后,你可以通过HTTP协议clone至本地。 但是,如果你尝试使用SSH协议进行操作,多半会提示输入密码。 7.1.2方式一 这时需要我们配置修改SSH端口。...,并修改参数 tip:vi编译器搜索方法: 命令模式下,输入/字符串,按下回车,得到搜索结果,按n键切换搜索结果 1、减少进程数,修改worker_processes,官方建议CPU核心数加一,最小

    27510
    领券