需要有关将我的第一个rails应用程序部署到mediatemple(dv)的建议

我正在尝试在mediatemple(dv)上部署我的第一个rails应用程序,我没有任何运气。

我正在尝试使用phusion乘客所以我去了http://www.modrails.com/videos/passenger.mov并观看了有关安装这个的教程。 我做了一切没有任何问题,当我指向我的IP时,我看到一个apache页面,而不是我的rails应用程序。

我注意到在mediatemple上,我不得不创建一个vhosts.conf文件并运行一个命令来重新配置我的项目以查看这个vhosts.conf文件。 参考 – http://kb.mediatemple.net/questions/1621/Why+is+my+vhost+file+not+being+used+by+Apache%3F#dv_40对于最后一步,我做了/usr/local/psa/admin/sbin/httpdmng --reconfigure-domain xxx.xx.xx.xx而不是重新配置全部。

这是我的vhosts.conf文件的样子:

 LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.3-p125/gems/passenger-3.0.11/ext/apache2/mod_passenger.so PassengerRoot /usr/local/rvm/gems/ruby-1.9.3-p125/gems/passenger-3.0.11 PassengerRuby /usr/local/rvm/wrappers/ruby-1.9.3-p125/ruby  ServerName xxx.xx.xx.xx DocumentRoot /var/www/vhosts/myProject/httpdocs # <-- be sure to point to 'public'!  AllowOverride all # <-- relax Apache security settings Options -MultiViews # <-- MultiViews must be turned off   

任何人都有幸在mt(dv)上部署rails应用程序,可以向rails noob提出一些建议吗?

我刚刚在我的dv服务器上完成了这个,所以这里是一个快速浏览。 我将假设您正在使用Ruby 1.9.3和Rails 3.2,并以root身份运行以下所有命令。

您还可以在服务器上安装最新版本的rake和passenger安装程序。 如果没有,请尝试:

 gem update --system gem install rake gem install passenger 

下一步是登录您的MediaTemple管理面板。 单击您感兴趣的域的Admin按钮(而不是Plesk按钮),然后选择“Root Access和Developer Tools”选项。 安装开发人员工具(这将需要大约10分钟)。

完成后,ssh进入您的服务器并执行以下操作:

 passenger-install-apache2-module 

有一个很好的指导安装,所以我不会在这里详细介绍。 您可能需要通过yum在此处安装一些其他依赖项,因此请仔细检查此脚本的输出。

一旦完成,请转到并编辑您的httpd.conf文件。 这保存在/etc/httpd/conf/httpd.conf 。 您将需要在其末尾添加以下行(请注意路径可能会有所不同,因为我使用rvm来管理我的ruby安装和gemsets)。

 # Passenger Module for Apache (For Rails apps) LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.3-p125@rails32/gems/passenger-3.0.11/ext/apache2/mod_passenger.so PassengerRoot /usr/local/rvm/gems/ruby-1.9.3-p125@rails32/gems/passenger-3.0.11 PassengerRuby /usr/local/rvm/wrappers/ruby-1.9.3-p125@rails32/ruby PassengerDefaultUser root 

此时您应该已准备好创建一个新的rails应用程序,以便从httpdocs文件夹中删除所有内容,并在以域用户身份登录时发出以下命令(不是root!)

 rails new /path/to/httpdocs 

/var/www/vhosts/www.domain.com/conf编辑您的vhost.conf文件(或创建一个新文件)(您需要以root身份执行此操作)。

 ServerName domainname.com ServerAlias domainname.com DocumentRoot /var/www/vhosts/domainname.com/httpdocs/public  Options FollowSymLinks AllowOverride None Order allow,deny Allow from all  RailsEnv development RailsBaseURI / 

最后,问题

 /usr/local/psa/admin/sbin/httpdmng --reconfigure-domain xxx.xx.xx.xx 

并重启apache

 /usr/sbin/apachectl -k restart 

那应该是它!

这个链接真的帮助了我整个事情: http : //www.twohard.com/blog/setting-rails-passenger-mediatemple-dv35-servers

Interesting Posts