Hello there, apache-talk!
Задача. Дано:
- доменное имя www.a.ru , и поддомен www.b.c.ru.
- сервер 1, поддерживающий primary dns, который в частности поддерживает и
имя www.a.ru
- сервер 2, поддерживающий домен www.c.ru, у которого в DNS прописано,
что ip-адрес у www.b.c.ru такой же, как у сервера 1.
Требуется: у всех юзеров, заходящих на www.a.ru, в строке URL браузера
должно быть написано "b.c.ru". У всех, заходящих сразу на b.c.ru, так
и должно остаться там "b.c.ru"
Для решения задачи используется переадресация. Для этого в конфиге
апача на сервере 1 написано:
#-- WWW.A.RU ---
<VirtualHost 195.5.5.5>
ServerAdmin sly@xxxx
DocumentRoot /www/htdocs/
ServerName www.a.ru
Redirect / http://www.b.c.ru/
CharsetSelectionOrder Portnumber Useragent Hostname Dirprefix
ScriptAlias /cgi-bin/ /www/cgi-bin/
CustomLog /log/www/a.log combined
ErrorLog /log/www/a_error.log
CharsetDefault windows-1251
CharsetSourceEnc windows-1251
DirectoryIndex index.htm index.html index.shtml
<Directory /www/htdocs>
Options FollowSymLinks Includes
AllowOverride All
</Directory>
</VirtualHost>
#-- WWW.B.C.RU ---
<VirtualHost 195.5.5.5>
ServerAdmin sly@xxxx
DocumentRoot /www/htdocs/
ServerName b.c.ru
CharsetSelectionOrder Portnumber Useragent Hostname Dirprefix
ScriptAlias /cgi-bin/ /www/cgi-bin/
CustomLog /log/www/a.log combined
ErrorLog /log/www/a_error.log
CharsetDefault windows-1251
CharsetSourceEnc windows-1251
DirectoryIndex index.htm index.html index.shtml
<Directory /www/htdocs>
Options FollowSymLinks Includes
AllowOverride All
</Directory>
</VirtualHost>
то есть, все пользователи с www.a.ru перенаправляются на b.c.ru,
который на этом же сервере и есть.
Но возникает проблема - приходится во всех html менять ссылки на
скриты с www.a.ru/cgi-bin/script.cgi на относительные
(/cgi-bin/script.cgi) или на b.c.ru/cgi-bin/script.cgi , ибо иначе в
скрипты не передаются их параметры.
Можно как-то по-другому решить ту же задачу , но так, чтобы не было
необходимости менять все ссылки во всех документах?
Slava 'SLY' Golovanov
Chief Engineer,
Absolute Games, http://www.ag.ru
=============================================================================
= Apache-Talk@xxxxxxxxxxxxx mailing list =
Mail "unsubscribe apache-talk" to majordomo@xxxxxxxxxxxxx if you want to quit.
= Archive avaliable at http://www.lexa.ru/apache-talk =
"Russian Apache" includes software developed
by the Apache Group for use in the Apache HTTP server project
(http://www.apache.org/) See
Apache LICENSE.
Copyright (C) 1995-2001 The Apache Group. All rights reserved.
Copyright (C) 1996 Dm. Kryukov; Copyright (C)
1997-2009 Alex Tutubalin. Design (C) 1998 Max Smolev.