【问题标题】:Error Deploying Rails Application部署 Rails 应用程序时出错
【发布时间】:2009-08-08 20:45:08
【问题描述】:

我在尝试部署 Rails 站点时遇到问题

当我启动 mongrel 并启动我的应用程序并重写并从 Apache 启动时

应用程序已显示

但是当我链接到http://myapp.com/account/login

Not Found

The requested URL /account/login was not found on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

当我尝试默认 myapp.com:12007/

正常,我可以链接

有什么问题?

【问题讨论】:

  • 访问 myapp.com:12007/account/login 会发生什么?
  • 它工作...正常但是当我访问没有端口不工作...
  • 您可能必须开始发布您的 Apache 配置(只需虚拟主机指令即可),然后才会有人真正知道您出了什么问题。

标签: ruby-on-rails


【解决方案1】:

仅供参考

问题是@.httaccess 文件

@文件夹public_html/

只需要这样编辑:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^myapp.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.myapp.com$
RewriteRule ^.*$ "http\:\/\/127\.0\.0\.1\:12007%{REQUEST_URI}" [P,QSA,L]

【讨论】:

  • 这将通过 Rails 为 /everything/ 提供服务,包括由 Apache 更好地处理的静态文件。如果你没有图像、CSS 或 Javascript,那可能就是你想要的……否则你会想从重写中排除这些。 blog.codahale.com/2006/06/19/… 有一个稍微过时但仍然适用于使用 Apache 进行 Rails 代理部署的指南;我的部署是相似的,虽然我使用 Thin 而不是 Mongrel。
【解决方案2】:

尝试将 NameVirtualServer *:12007 添加到 apache2.conf 文件的末尾

【讨论】:

  • 嗯...这将导致 Apache 在 12007 上侦听,而他的 Rails 应用程序服务器似乎正在侦听。 Apache 需要监听 80,它是;看起来重写/代理配置错误。
  • 你是对的,我被告知管理员托管这个问题。他们说“问题@文件.httaccess”然后管理员重置“重定向访问”
猜你喜欢
  • 1970-01-01
  • 2015-09-22
  • 2015-12-09
  • 2017-03-04
  • 1970-01-01
  • 1970-01-01
  • 2017-08-22
  • 1970-01-01
相关资源
最近更新 更多