Доброго времени суток. Возник вопрос. написал себе сайтик с собственной CMS. у меня есть модули, к которым я обращаюсь mysyte.ru/xxx/ что надо сделать, чтоб данной папочки ххх присвоить отдельный домен? сайт пока на домашнем сервере
Три вещи 1. В апачевском httpd-vhosts.conf описать папочку как виртуальный хост (у меня папка diplom). заменить выделенные места на свои <VirtualHost *:80> # Папка, в которой будет корень вашего хоста. DocumentRoot "D:/BitNami WAPPStack/apache2/htdocs/diplom" # Домен по которому вы сможете обращаться к виртуальному хосту. ServerName www.diplom.ru # Алиас (добавочное имя) домена. ServerAlias diplom # Файл, в который будут записываться ошибки. ErrorLog "logs/diplom-error.log" # Файл журнала доступа к хосту. CustomLog "logs/diplom-access.log" common </VirtualHost> 2. В файле C:\WINDOWS\system32\drivers\etc прописать 127.0.0.1 www.diplom.ru 127.0.0.1 diplom 3. перезапустить апач
alexey_baranov спасибо.... а каким образом мне сделать неограниченое число дополнительных доменов 2 и 3 уровня? непонимаю как это сделать если я один раз уже задам параметр DocumentRoot в блоке <VirtualHost></VirtualHost>... можно пожалуйса обьяснить?
дело в том, что количество блоков <VirtualHost></VirtualHost> неограничено. на каждую папки которую хочешь сделать отдельным доменом пишется один новый блок <VirtualHost></VirtualHost>. вот пример моего файла на работе. Причем учти порядок этих блоков. если ни один из блоков не перехватывает запрос, то будет использован первый по порядку блок. Код (Text): # # Virtual Hosts # # If you want to maintain multiple domains/hostnames on your # machine you can setup VirtualHost containers for them. Most configurations # use only name-based virtual hosts so the server doesn't need to worry about # IP addresses. This is indicated by the asterisks in the directives below. # # Please see the documentation at # <URL:http://httpd.apache.org/docs/2.2/vhosts/> # for further details before you try to setup virtual hosts. # # You may use the command line option '-S' to verify your virtual host # configuration. # # Use name-based virtual hosting. # NameVirtualHost *:80 # # VirtualHost example: # Almost any Apache directive may go into a VirtualHost container. # The first VirtualHost section is used for all requests that do not # match a ServerName or ServerAlias in any <VirtualHost> block. # <VirtualHost *:80> ServerAdmin webmaster@dummy-host.example.com DocumentRoot "d:/BitNami WAPPStack/apache2/htdocs" ServerName dummy-host.example.com ServerAlias www.dummy-host.example.com ErrorLog "logs/error.log" CustomLog "logs/access.log" common </VirtualHost> <VirtualHost *:80> # Папка, в которой будет корень вашего хоста. DocumentRoot "D:/BitNami WAPPStack/apache2/htdocs/tor" # Домен по которому вы сможете обращаться к виртуальному хосту. ServerName www.tor.ru # Алиас (добавочное имя) домена. ServerAlias tor # Файл, в который будут записываться ошибки. ErrorLog "logs/tor-error.log" # Файл журнала доступа к хосту. CustomLog "logs/tor-access.log" common </VirtualHost> <VirtualHost *:80> # Папка, в которой будет корень вашего хоста. DocumentRoot "D:/BitNami WAPPStack/apache2/htdocs/diplom" # Домен по которому вы сможете обращаться к виртуальному хосту. ServerName www.diplom.ru # Алиас (добавочное имя) домена. ServerAlias diplom # Файл, в который будут записываться ошибки. ErrorLog "logs/diplom-error.log" # Файл журнала доступа к хосту. CustomLog "logs/diplom-access.log" common </VirtualHost> <VirtualHost *:80> # Папка, в которой будет корень вашего хоста. DocumentRoot "D:/BitNami WAPPStack/apache2/htdocs/mvc" # Домен по которому вы сможете обращаться к виртуальному хосту. ServerName www.mvc.ru # Алиас (добавочное имя) домена. ServerAlias mvc # Файл, в который будут записываться ошибки. ErrorLog "logs/mvc-error.log" # Файл журнала доступа к хосту. CustomLog "logs/mvc-access.log" common </VirtualHost>
alexey_baranov Понил))) получается при этом я смогу обращаться к скриптам которые на уровень выше стоят (корневом каталоге) в формате ../../index.php ??? или мне придется уже указывать ссылку вместе с доменом?
понятия не имею. у тебя в голове картина, что эти папки- части одного большого целого, но если я не ошибаюсь, с точки зрения апача такие папки смотрятся как совершенно независимые, никак не связные домены. это было придумано для того, чтобы на одном веб сервере запускать по 50 независимых проектов. А отсюда следует, что когда ты делаешь ../../index.php, ты стучишься на совсем другой домен. логично предположить что относительные ссылки тут не прокатят. хотя это надо пробовать. напиши что получилось. апач- это не моя сильная сторона. я больше по программированию.
в принципе у меня то такая же ситуация. только я про это никогда не задумывался. есть несколько интерфейсов , которые хранятся в папках i/br - это движек i/zaya - это наш рабочий интерфейс i/zak - это интерфейс заказчика i/disp - это совсем урезанный для диспетчеров и т.д. внутри интерфейса все работает ровно, относительные ссылки рулят.а если мне с одного интерфейса надо отослать в другой, то приходится директить так tor.id.tr.ru/i/disp/view.php или tor.id.tr.ru/i/zaya/edit.php и т.д. если то что ты пробуешь прокатит, можно будет лихо упростить все ссылки.