我正在尝试在同一个apache服务器上运行squirrelmail和客运服务器的设置,有一个url指向squirrelmail和其他由乘客处理的所有内容。到目前为止,我已经做到了,无论是松驰邮件和乘客都将运行良好,但当乘客运行时,它处理所有的urls。
到目前为止,我已经尝试使用Alias和重定向来指向一个webmail/ url目录,但这是行不通的。
这是我的httpd.conf文件:
<VirtualHost *:80>
ServerName not.my.real.server.name
DocumentRoot /var/www/sinatra/public
# Does not work:
#Redirect webmail/ /usr/share/squirrelmail/
#<Directory /usr/share/squirrelmail>
# Require all granted
#</Directory>
<Directory /var/www/sinatra/public>
Order allow,deny
Allow from all
</Directory>
</VirtualHost>apache2.conf为乘客添加了这些文件,除此之外,我没有对apache的标准UbuntuServer12.04安装做任何更改:
# passenger config
LoadModule passenger_module /home/kenneth/.rvm/gems/ruby-1.9.3-p194/gems/passenger-3.0.15/ext/apache2/mod_passenger.so
PassengerRoot /home/kenneth/.rvm/gems/ruby-1.9.3-p194/gems/passenger-3.0.15
PassengerRuby /home/kenneth/.rvm/wrappers/ruby-1.9.3-p194/rubypassanger config.ru文件:
require './index'
run Sinatra::Application发布于 2012-08-30 08:45:04
试试这个:
<VirtualHost *:80>
ServerName not.my.real.server.name
DocumentRoot /var/www
Alias /webmail "/usr/share/squirrelmail"
<Directory /usr/share/squirrelmail>
Order allow,deny
Allow from all
</Directory>
<Directory /var/www/sinatra>
RackBaseURI /sinatra
PassengerResolveSymlinksInDocumentRoot On
PassengerAppRoot /var/www/sinatra
</Directory>
</VirtualHost>我认为我们可以通过关闭PassengerEnabled来告诉Rails忽略特定的URL:
<VirtualHost *:80>
ServerName not.my.real.server.name
DocumentRoot /var/www/sinatra/public
<Directory /var/www/sinatra/public>
Order allow,deny
Allow from all
</Directory>
Alias /webmail "/usr/share/squirrelmail"
<Location /webmail>
PassengerEnabled off
</Location>
</VirtualHost>试试看!
https://serverfault.com/questions/422653
复制相似问题