Rails 无法生成临时文件(Tempfile)。

3
我通过Passenger在我的Apache上安装了Rails应用程序,但是我遇到了一个奇怪的错误。
cannot generate tempfile `/var/rails/wo42/tmp/cache/assets/sprockets%2Fb94bb762c37131f8bb65f843c621876720120401-29970-ha7f1p-9'


Extracted source (around line #24):

21:     <%= stylesheet_link_tag    "application" %>
22:     
23:     <!-- Included JS Files  -->
24:     <%= javascript_include_tag "application" %>
25:   
26:   <%= csrf_meta_tags %>
27: </head>

似乎与权限有关,但我已将 /var/rails/wo42/tmp 设置为 chmod 777 了?

Apache 运行在哪个账户下?您能够以相同的身份登录吗?切换到 /var/rails,看一下是否能够执行 'touch junk' 命令。如果成功了,请删除 junk 文件,并进入下一个目录 'wo42',重复这个过程。最终,您可能会遇到“权限被拒绝”的错误提示,此时您需要修复它,您可能需要使用 chown 或 chgrp 命令修改某个文件夹的所属用户或组到 Apache 运行的用户或组。 - RadBrad
我已经更改了组,但仍然无法正常工作!也许你可以看一下这个链接:http://alternadev.no-ip.org/wo42/ - jhbruhn
那只是给了我一个错误,所以你已经确认这不是权限问题了吗?如果需要帮助,请私信我。 - RadBrad
1个回答

3

我刚刚也遇到了这个问题。不能确定这是否是一个永久性的解决方法,但以下方法帮助我解决了问题:

rake tmp:clear

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接