ruby-on-rails – 在Capistrano部署后丢失Rails资产
发布时间:2020-12-17 03:37:21 所属栏目:百科 来源:网络整理
导读:我正在构建VPS,它通过Capistrano部署,数据库连接等,但页面没有可用的资源 – 它只是基本的html. 资产似乎已编译,并存在于共享目录中. 从页面html: link href="/assets/application-a1b5d69aeaff709fd3dce163c559b38b.css" media="all" rel="stylesheet" typ
我正在构建VPS,它通过Capistrano部署,数据库连接等,但页面没有可用的资源 – 它只是基本的html.
资产似乎已编译,并存在于共享目录中. 从页面html: <link href="/assets/application-a1b5d69aeaff709fd3dce163c559b38b.css" media="all" rel="stylesheet" type="text/css" /> <script src="/assets/application-0ebd07089629f8c6880dddfb688d525d.js" type="text/javascript"></script> 资产文件似乎存在于共享目录中: assay@assaypipeline:~/apps/assay/shared/assets$ls application- a1b5d69aeaff709fd3dce163c559b38b.css application-a1b5d69aeaff709fd3dce163c559b38b.css 当我查看,源,然后单击指向资产路径的超链接时,我从Nginx中找不到404. 解 感谢Martin M(接受了答复)的帮助.我从服务器上的?/ apps /(app name)/ current目录中采取的步骤. $bundle install $RAILS_ENV=production bundle exec rake assets:precompile $sudo service nginx restart 显然,将它包含在Capistrano配方中会更好. *编辑 – Capfile * load 'deploy' load 'deploy/assets' load 'config/deploy' 解决方法
您的预编译资产应位于公共/资产中,请参阅
rails guides
通常你通过跑步来创造它们 RAILS_ENV=production bundle exec rake assets:precompile 作为部署的一部分. 另见本question (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |