gpt4 book ai didi

ruby-on-rails - 需要关于将我的第一个 Rails 应用程序部署到 mediatemple (dv) 的建议

转载 作者:行者123 更新时间:2023-12-04 05:58:33 25 4
gpt4 key购买 nike

我正在尝试在 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

<VirtualHost *:80>
ServerName xxx.xx.xx.xx
DocumentRoot /var/www/vhosts/myProject/httpdocs # <-- be sure to point
to 'public'!
<Directory /var/www/vhosts/myProject/httpdocs>
AllowOverride all # <-- relax Apache security settings
Options -MultiViews # <-- MultiViews must be turned off
</Directory>
</VirtualHost>

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

最佳答案

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

您的服务器上还安装了最新版本的 rake 和乘客。如果没有,请尝试:

gem update --system
gem install rake
gem install passenger

下一步是登录您的 MediaTemple 管理面板。单击您感兴趣的域的 Admin 按钮(不是 Plesk 按钮),然后选择“Root Access and 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
<Directory "/var/www/vhosts/domainname.com/httpdocs/public">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
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

关于ruby-on-rails - 需要关于将我的第一个 Rails 应用程序部署到 mediatemple (dv) 的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9595459/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com