我在开发和生产中运行相同的rails 5.1.5应用程序。一切都在开发环境中按预期工作。在生产中,我最初无法在公用文件夹中提供静态资产。我在production.rb中设置了config.public_file_server.enabled = true。但是,由于我的页面上的每个请求都在授权后面(作为:应用程序控制器中的before_action),设置授权cookie的.js文件在未经授权的情况下也不会提供,并且我的服务会被循环捕获。这在开发模式中不会发生,并且不通过rails路由请求公共资产。我需要指导如何在铁路应用的开发和生产模式中提供公共资产。
答案 0 :(得分:0)
我相信这可能是由于您的生产配置出现问题。对于Production中的示例,您不要让Rails进程提供静态资源。您应该设置由Web服务器提供服务的静态资产。您可以通过向Apache或Nginx虚拟文件添加以下配置来执行此操作。
DocumentRoot / home / xxx / test / public
root / var / www / phindee / current / public;