gpt4 book ai didi

ruby-on-rails - Ruby on Rails 设置 : Unable to access log file

转载 作者:太空宇宙 更新时间:2023-11-03 16:58:28 27 4
gpt4 key购买 nike

我是第一次设置 Ruby on Rails;在我的服务器上,我已经创建并加载了默认的 Rails 应用程序。我可以查看默认页面(“欢迎加入!您正在使用 Rails”),但是当我点击“查看应用程序环境”链接时,它会生成 500 错误。

(可以查看here。)

我想了解有关该错误的更多信息,但是日志文件(“log/production.log”)是空的。查看我的 Apache 日志,我发现:

Rails Error: Unable to access log file. Please ensure that /var/www/rails/myapp/log/production.log exists and is chmod 0666. The log level has been raised to WARN and the output directed to STDERR until the problem is fixed.

所以,我实际上想让我的 Ruby on Rails 错误日志记录正常工作。

我知道这个问题之前已经发布过几次,但我已经尝试了所有我能找到的东西,所以这是我尝试过的:

  1. 创建“log/production.log”文件,将所有者设置为 www-data,设置 chmod 0666
  2. 将“日志”文件夹的所有者设置为 www-data,设置 chmod 0666
  3. 仔细检查我的生产环境设置,以便设置 config.log_level = :info
  4. 检查 Apache 是否正在使用 www-data 用户(“etc/apache2/envvars”):

    export APACHE_RUN_USER=www-data
    export APACHE_RUN_GROUP=www-data
  5. “etc/apache2/mods-available/passenger.conf”为 Passenger 设置了默认用户:

    <IfModule mod_passenger.c>
    PassengerRoot /usr
    PassengerRuby /usr/bin/ruby
    PassengerDefaultUser www-data
    </IfModule>
  6. “config.ru”和“configs/environment.rb”的所有者是www-data

  7. 我的虚拟主机已相应设置:

    DocumentRoot /var/www/rails/myapp/public
    RackBaseURI /
    RackEnv production
    PassengerMaxPoolSize 4

已经阅读并尝试了这些地方建议的所有修复:

(这就是我现在能记得的所有尝试...)

我的一些环境设置:

  • 在 Amazon EC2 上运行的 Ubuntu 11.10
  • Apache 2.2.20
  • RVM 1.10.2
  • ruby 1.9.3p0
  • rails 3.1.3

最佳答案

此问题现已解决,但问题本身的原因尚不完全清楚。

我在使用 Apache 和 Passenger(又名 ModRails)时遇到了一些奇怪的配置问题。存在两个模块:一个似乎与 Apache(?) 打包在一起,另一个是我通过 passenger-install-apache2-module 获得的。当我指向预安装的时,我遇到了这个日志记录问题。当我指向由 passenger-install-apache2-module 部署的那个时,我遇到了一个完全不同的问题,即 Passenger 会因段错误而崩溃(请参阅我在 ServerFault here 上的帖子。)

最后,我完全删除我的服务器并从基本的 Ubuntu AMI 中执行了所有的干净安装(在 Amazon EC2 上运行使这很容易。)重新安装后,我运行了 passenger-install-apache2-module 并配置 Apache 以加载其部署的模块。这次模块没有崩溃,但是出现了日志错误。我在我的 Rails 应用程序的根目录上设置了 chmod 755,确保 production.log 存在并且它至少有 chmod 0666 权限。瞧,问题解决了。

TL;DR 进行了全新安装,确保我使用的是最新的 Passenger 模块,并且我的文件权限设置正确。

关于ruby-on-rails - Ruby on Rails 设置 : Unable to access log file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8929919/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com