5

我在 debian 挤压上安装了 apache。我已经通过 rvm 和 rails + Passenger 通过“gem install”安装了 ruby​​ 1.9.3。我的设置是'/var/rails/rails_app'中的一个rails应用程序,我配置了一个子域'rails-app.mydomain.com',它重定向到该应用程序文件夹,该文件夹是带有www-data:www-data的chmodded 755。

我已经在这个站点上关注了 Ruby On Rails 安装 - > http://xyzpub.com/en/ruby-on-rails/3.2/rails3-install-debian.html 和乘客之一,在此设置了子域 - > http://www.asconix.com/howtos/debian/multiple-ruby-rails-apache-passenger-rvm-debian-howto

现在,当我通过该子域进入我的网站时,它显示“403 禁止访问”错误!在我删除它之前,它显示了 Ruby On Rails“欢迎国外”-消息。

当我通过'passenger start'在应用程序目录中启动Passenger Standalone时,应用程序的工作方式与端口3000上的一样。

你能告诉我有什么问题吗?

apache 错误日志向我显示此 [Sat Nov 10 07:38:09 2012] [error] [client XXX.XXX.XXX.XXX] 客户端被服务器配置拒绝:/var/rails/rails_app/public/

4

1 回答 1

0

我认为您正在尝试通过端口 80 上的 http 访问您的应用程序。并且您尚未将 apache 配置为使用 post 80 指向您的应用程序。

首先请检查乘客模块是否安装在您的服务器上其次请验证您的 apache 配置类似于

<VirtualHost *:80>
      ServerName <server name>
      # !!! Be sure to point DocumentRoot to 'public'!
      DocumentRoot <path to public folder of your application>
      RailsEnv production
      <Directory <path to public folder of your application> >
         # This relaxes Apache security settings.
         AllowOverride all
         # MultiViews must be turned off.
         Options FollowSymLinks
      </Directory
   </VirtualHost>
于 2015-09-17T09:20:09.950 回答