![我们可以在同一台服务器上运行 Ruby on Rails 应用程序和 Wordpress 博客吗?怎样做?](https://linux22.com/image/610694/%E6%88%91%E4%BB%AC%E5%8F%AF%E4%BB%A5%E5%9C%A8%E5%90%8C%E4%B8%80%E5%8F%B0%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E8%BF%90%E8%A1%8C%20Ruby%20on%20Rails%20%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E5%92%8C%20Wordpress%20%E5%8D%9A%E5%AE%A2%E5%90%97%EF%BC%9F%E6%80%8E%E6%A0%B7%E5%81%9A%EF%BC%9F.png)
我在我的 PS 服务器上运行 Nginx。它有三个 Wordpress 网站。我试图开始将一个网站转换为 Rails 应用程序。首先,我将只转换首页。其他部分在 Nginx 中作为单独的服务器在子域下运行。我的问题是,如何在不损害现有网站的情况下在此服务器上安装和设置 ruby on rails?一个网站的主页将通过 Rails 运行,其他网站将通过 Nginx 运行。
答案1
通常你需要做的就是在 nginx 中设置一个virtualhost
-ish 服务器,我以前从未启动过 RoR 应用程序,但它很简单:
server {
server_name ror.example.com;
proxy_set_header Host $host;
proxy_pass http://ror.example.com:3001;
}
将该服务器部分放入您的 nginx 配置中将设置一个名为 ror.example.com 的虚拟主机,它将请求代理到任何 http 应用程序。
或者,你可以设置 nginx 来将你的应用视为一个location
定义:
location /ror-app/ {
proxy_pass ...(same as above)
}
高血压,
答案2
我认为您已经有一个虚拟主机来为您的 wordpress 网站提供服务;我认为您只需要为 nginx 安装 Passenger(Passenger 安装程序将为您编译一个支持 ror 的 nginx)并在其中配置激活 Passenger 的服务器。
例如乘客文件
http {
...
server {
listen 80;
server_name www.mycook.com;
root /webapps/mycook/public;
passenger_enabled on;
}
...
}
以下是乘客文件:http://www.modrails.com/documentation/Users%20guide%20Nginx.html#rubygems_generic_install
如果您想测试该应用程序,您也可以在其他端口上使用 Passenger-standalone:
gem install passenger
cd /var/www/myrorapp/
passenger start
这将在端口 3000 打开一个 nginx 网络服务器。相关文档在此处:http://www.modrails.com/documentation/Users%20guide%20Standalone.html
我考虑你已经在系统上安装了 Ruby(系统范围或 RVM 或 rbenv)
再见