我花了一整天的时间试图弄清楚我的 SubUri 出了什么问题。它基本上在 Web 服务器中运行两个 Rails 应用程序,第一个应用程序myapp1在根目录上运行,第二个应用程序myapp2在 /api/v1 上运行。
问题是,当我启动服务器时,只有网站根目录上的 myapp1 有效,网络服务器 /api/v1 上的 myapp2 返回 404 错误。
我认为这是 gem 的问题,乘客没有使用myapp2的 gem ,保留在共享文件夹中(由于 capistrano),但是在寻找如何使用 RVM、Bundle 和 Passenger 解决这个问题时,我只得到了部署上的“需要“Bundler/Capistrano””可以解决,但这无济于事。
我不知道该怎么做。拜托,有人可以在这里给我一点帮助吗?
阿帕奇配置:
<VirtualHost *:80>
ServerName myserver.com
DocumentRoot /home/deploy/myapp1/current/public
RailsBaseURI /
<Directory /home/deploy/myapp1/current/public>
AllowOverride all
Options -MultiViews
</Directory>
RailsBaseURI /api/v1
<Directory /home/deploy/myapp1/current/public/myapp2/v1/current/public>
Options -MultiViews
</Directory>
</VirtualHost>
/var/log/apache2/error.log 中的错误:
[Tue Jan 22 14:36:52 2013] [notice] caught SIGTERM, shutting down
[Tue Jan 22 14:36:53 2013] [notice] Apache/2.2.22 (Ubuntu) PHP/5.3.10-1ubuntu3.4 with S$