我正在将旧的ASP.NET站点转换为Ruby on Rails站点,我想知道使用相同的域将旧的.aspx页面重定向到Ruby on Rails路由的最佳方法。该网站的新Ruby on Rails版本位于不同的服务器上,但我显然希望该域名是相同的。例如,如何将域名/ DNS转移到托管Ruby on Rails应用程序的新服务器时,如何将www.mydomain.com/product.aspx?productid=1重定向到www.mydomain.com/product/1?我可以很容易地将DNS切换到新服务器,一切都会正常工作,但我没有获得将旧的.aspx页面重定向到新的Ruby on Rails路由的SEO和遗留URL的好处。搜索引擎永远不会知道,所以我会丢失所有页面排名,并且必须重新开始。
有关最佳方法的任何建议吗?
答案 0 :(得分:2)
理想情况下,如果你使用的是Phusion Passenger等,你可以在它遇到Rails之前处理这类事情,比如使用Apache mod_rewrite
规则。
也就是说,如果您希望它位于您的应用中,您仍然可以在routes.rb
设置永久redirects:
get 'product.aspx?productid=:id', to: redirect('/product/%{id}')