我完全失去了尝试将演示Rails应用程序部署到 my-app-name .appspot.com。我在Developers Console中设置了一个项目,并在我的VM上部署了Ruby堆栈。我原本以为我只需要配置Web服务器的默认站点,使得DocumentRoot是我的Rails应用程序的公共文件夹(来自/ etc / apache2 / sites-available / default):
<VirtualHost *:80>
ServerName my-app-name.appspot.com
DocumentRoot /apps/my-app-name/public
<Directory /apps/my-app-name/public>
Allow from all
Options -MultiViews
</Directory>
</VirtualHost>
由于我的目标是 my-app-name .appspot.com空间而不使用单独的域名,因此我猜测不需要ServerName和ServerAlias设置在这种情况下。现在当我访问我的目标appspot.com地址时,我收到404错误:
未找到 - 在此服务器上找不到请求的网址。
日志显示Phusion Passenger实际上在听取请求。当我访问项目的编号IP地址时,我仍然可以获得Apache的默认索引页面。显然,这是我没有看到的图片的关键部分,所以非常感谢任何帮助。
答案 0 :(得分:1)
感谢评论的海报,我现在明白我正在咆哮错误的树。 appspot.com域与计算引擎不兼容;我将不得不通过IP地址访问我的项目。
此外,由于我只是试图将测试应用作为概念验证,我需要将Rails环境设置为development
。在我找到这些说明(第6步)之前,我很沮丧:https://www.digitalocean.com/community/tutorials/how-to-deploy-a-rails-app-with-passenger-and-apache-on-ubuntu-14-04
答案 1 :(得分:1)
如何在Google Compute Engine上部署Ruby on Rails的详细说明: http://startup-with-gae.blogspot.com/2015/08/how-to-deploy-ruby-on-rails-application.html