Redmine:无法同时运行 2 个实例



我无法在 Debian 7 服务器中同时运行 2 个红矿。使用 Apache2 和 Passenger (Ruby 导轨(

这些应用程序都在测试环境(Webrick 服务器(中工作,如果我在 apache 配置文件中只声明一个虚拟主机,它们都可以工作。但是如果我同时声明两者,这样,只有第一个有效:

<VirtualHost *:80>
ServerName <myURL>/requests
DocumentRoot /var/www/
RailsEnv production   
#PassengerRuby /usr/local/bin/ruby
#PassengerLogLevel 4
#RailsBaseURI /var/www/myapp/public
Alias /requests /var/www/redmine_instance1/public
<Location /requests>
PassengerBaseURI /requests
PassengerAppRoot /var/www/redmine_instance1
</Location>
<Directory /var/www/redmine_instance1/public>
AllowOverride all
Options -MultiViews
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName <myURL>/project
DocumentRoot /var/www/
RailsEnv production   
Alias /project /var/www/redmine_instance2/public
<Location /project>
PassengerBaseURI /project
PassengerAppRoot /var/www/redmine_instance2
</Location>
<Directory /var/www/redmine_instance2/public>
AllowOverride all
Options -MultiViews
</Directory>
</VirtualHost>

您只能在虚拟主机上响应特定端口,您的 2 个实例都需要端口 80,因此这不起作用。

一种解决方案是在端口 80 上有一个反向代理,该代理根据请求的 URL 重定向到例如在端口 8080 和 8081 上运行的apache实例之一(定义为虚拟主机,不要忘记设置 apache 本身将侦听的端口 - 通常在ports.conf中配置(。

关于反向代理,有不同的程序,pound相对容易处理和配置。

最新更新