我无法在Debian 7服务器上同时运行2个redmines。使用Apache2和Passenger(ruby rails)
如果我在apache配置文件中只声明一个虚拟主机,则应用程序都在测试环境(Webrick服务器)中工作,并且两者都有效。但是,如果我以这种方式声明两者,只有第一个起作用:
<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>
答案 0 :(得分:0)
您只能在特定端口上进行虚拟主机响应,您的2个实例都需要端口80,因此无法使用。
一种解决方案是在端口80上安装一个反向代理,根据请求的URL重定向到apache
个实例之一,例如在端口8080和8081上运行(定义为虚拟主机,不要忘记设置apache本身将侦听的端口 - 通常在ports.conf
中配置。
关于反向代理,有不同的程序,pound
相对容易处理和配置。