В настоящее время у нас есть внутренний сайт для ИТ-специалистов по адресу it.example.com
, на котором размещен сингл Redmine сайт.
Я хочу настроить Apache так, чтобы, если пользователь переходит на kb.example.com
он перенаправляет их на http://it.example.com/some/path/to/knowledge-base
как ярлык.
Я добавил <VirtualHost>
в конце моего httpd.conf, и теперь всякий раз, когда я пытаюсь попасть на основной сайт (it.example.com), браузер заходит в бесконечный цикл перенаправления:
Вот мой httpd.conf
:
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-4.0.37/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-4.0.37
PassengerDefaultRuby /usr/bin/ruby
</IfModule>
ServerName it.example.com
ServerAdmin support@example.com
DocumentRoot /var/www/redmine-2.4.3/public
ErrorLog logs/redmine_error_log
SetEnv RAILS_ENV production
SetEnv RailsEnv production
#If you are using mod_fcgid and are going to upload files larger than
#131072 bytes you should consider adding the following line
#that allows to upload files up to 20 mb
MaxRequestLen 20971520
<Directory "/var/www/redmine-2.4.3/public">
Options Indexes ExecCGI FollowSymLinks -MultiViews
Order allow,deny
Allow from all
AllowOverride all
</Directory>
<VirtualHost *:80>
ServerName kb.example.com
Redirect / http://it.example.com/projects/knowledge-base
</VirtualHost>
Таким образом, похоже, что VirtualHost игнорируется, а правила для kb.example.com ВСЕГДА действуют, что вызывает бесконечное перенаправление ...
Я думаю, вам нужно обернуть существующие it.example.com
определение в <VirtualHost>
блок. Я думаю, это вызвано тем, что без определения vhost для it.example.com
, kb.example.com
становится виртуальным хостом по умолчанию. В случае, если подходящий vhost не найден, это то, что будет обслуживаться, которое затем возвращается к себе ...