Rails:“权限被拒绝 - /tmp/cache/assets/development/sprockets/...”?

sta*_*tic 3 permissions error-handling ruby-on-rails

当我运行 Rails 应用程序并使用浏览器导航到它们时,我收到以下错误rails

Permission denied - /path/to/my_rails_app/tmp/cache/assets/development/sprockets/37b5a12047376b10a57191a10d3af30a rails error
Run Code Online (Sandbox Code Playgroud)

而且我在./tmp/. 问题是什么?

Pro*_*ton 8

我遇到了同样的问题。

@apply2files 权限被拒绝

问题是你的应用程序tmp目录下的目录对当前用户是不可写的,即当前用户没有权限写入你的应用程序目录下的目录。tmp

我是这样解决的

只需删除具有超级用户权限的应用程序tmp目录中的目录即可:

sudo rm -rf tmp
Run Code Online (Sandbox Code Playgroud)

不要tmp再次重新创建目录,浪费精力

只需启动您的应用程序tmp目录就会再次自动创建:

rails s
Run Code Online (Sandbox Code Playgroud)

就这样。

我希望这有帮助


trh*_*trh 5

服务器无法写入创建或“拥有” my_rails_app 目录的用户。

chown -R webserveruser:webserveruser /path/to/my_rails_app
Run Code Online (Sandbox Code Playgroud)

将 webserveruser 更改为 http、apache 或任何运行服务器的用户名。: 右侧的实体是组,如果您需要在不更改用户的情况下进行写入访问,请使用您的用户可写的组名。

  • 我解决了这个问题:用`rm -rf .tmp`删除tmp并再次重新创建它`mkdir tmp`,现在没有错误 (3认同)