我需要将我的Rails应用程序从Heroku切换到Linode上的新主机。 我需要解决以下问题,并希望得到一些建议如何将Heroku rails应用程序迁移到新主机上的同一应用程序?
1)如何将数据从Heroku迁移到我的新Linode主机?
2)如何将heroku域名从myapp.herokuapp.com重定向到my_new_host.com?
我需要尽可能同时达到以上,使新的数据不会丢失
我需要将我的Rails应用程序从Heroku切换到Linode上的新主机。 我需要解决以下问题,并希望得到一些建议如何将Heroku rails应用程序迁移到新主机上的同一应用程序?
1)如何将数据从Heroku迁移到我的新Linode主机?
2)如何将heroku域名从myapp.herokuapp.com重定向到my_new_host.com?
我需要尽可能同时达到以上,使新的数据不会丢失
假设你正在你的Linode主机上运行的Postgres,那么你只需要简单地备份你在Heroku上,然后将其恢复到Heroku(pgbackups)。还有其他的选择 - 你可以使用heroku db:pull
从Heroku下拉到你的本地数据库,然后转移到Linode。另一种选择是使用你的linode服务器上的Heroku gem将数据直接从heroku应用程序拖入linode数据库。
您只能使用代码在Heroku上重定向,因此您必须将应用程序重新定向(rack_rewrite)到新主机。
你会希望把你的应用程序在Heroku上进入Heroku的维护模式。通过您选择的任何机制执行数据传输。然后将“重定向”代码部署到Heroku应用程序,然后在Heroku上关闭维护模式。访问herokuapp.com地址的访问者将被重定向到在新URL上运行的应用程序,无论哪里都可能。
谢谢你,这听起来像一个计划,你有什么建议如何rack_rewrite可能工作? – jamesc 2012-03-04 17:20:13
查看https://github.com/jtrupiano/rack-rewrite - 如果它是一个现有的rails应用程序,但是在您的application_controller.rb中执行一个redirect_to您的新URL的before_filter,则更简单。 – 2012-03-04 17:29:03
我想过之前的过滤器选项,但不知道重定向是否可以工作到不同的域。我认为使用之前的过滤器可能是最好的选择:) – jamesc 2012-03-04 17:31:26