我是网络开发和ruby on rails的绝对新手。我计划在Linode 512计划上部署一个ror应用程序。我的网站基本上是一个允许用户使用Ruby 1.9.3和Rails 3.2上传照片的论坛。
我应该使用哪种操作系统?它们有什么区别? (Ubuntu / Debian / CentOS / Fedora)
我应该使用Apache还是Nginx?它们有什么区别?
我应该使用PostgreSQL,MySQL,MongoDB或Linode上提供的任何其他类型的数据库吗?它们有什么区别?
我的目标受众来自中国,这意味着我无法使用Amazon S3。我应该让用户将照片上传到Linode服务器吗?
这个问题是否有任何循序渐进的初学者指南?
THX
答案 0 :(得分:9)
首先,我认为你太担心了。如果你是新手,只需按照流行的选择开始,然后随时更改,修改,扩展。随着您的技能成熟,您将了解最适合您的技能。
以下是一些对您来说更容易的选择:
我应该使用哪种操作系统?它们有什么区别?的 Ubuntu的强>
我应该使用Apache还是Nginx?它们有什么区别?的的Apache。如果它是一个小型网站,现在无关紧要。
我应该使用PostgreSQL,MySQL,MongoDB或Linode上提供的任何其他类型的数据库吗?它们有什么区别?的的MySQL。 MongoDB是一个NoSQL数据库,暂时可能不适合您。
我的目标受众来自中国,这意味着我无法使用Amazon S3。我应该让用户将照片上传到Linode服务器吗? 暂时上传到Linode。不要过早地扩展它。
此问题是否有任何分步初学者指南? Ryan的RailsCasts:http://railscasts.com/episodes/373-zero-downtime-deployment和http://railscasts.com/episodes/335-deploying-to-a-vps,他们是必须观看的,但不是免费的。
对于所有这些设置,Linode's tutorial有利于一开始。你也应该看看@Stefan的答案。
您还应尝试部署到Heroku,以便了解它。 Rails Tutorial有助于您从开发到部署进行学习。
答案 1 :(得分:5)
Linode上有几个专用的Rails设置指南:
Apache和Passenger:
nginx和乘客:
答案 2 :(得分:1)
由于我们有许多针对rails应用程序的linode部署,我的建议是:
ubuntu/centos + mysql/postgres + nginx + passenger
如果您的应用程序在操作中有大量的fb,那么您可以mongodb
作为选择