Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Генерация поддоменов
 
 автор: daniel20   (14.08.2011 в 17:06)   письмо автору
 
 

Здравствуйте! Стоит задача генерации поддоменов. Название папки = название поддомена.
Пытаюсь на localhost-е, делаю следующие операции, но результат никакой:
1. в файле hosts из WINDOWS прописываю: *.localhost;
2. в файл httpd.conf раскоментировал httpd-vhosts.conf и mod_rewrite
3. в файл httpd-vhosts.conf добавил следущий код:
<VirtualHost *:80>
DocumentRoot "c:/wamp/www/public/"
ServerName localhost
ServerAlias localhost *.localhost
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.localhost$
RewriteCond %{HTTP_HOST} ^((.*)\.)localhost$
RewriteRule ^/(.*) /%2/$1
</VirtualHost>
рестарт апаче сделано.
В папке public есть папка site1
когда пытаюсь достучатся до site1.localhost выдается ошибка "Сервер не найден"
но если прописываю в hosts site1.localhos то все работает.

Буду очень благодарен если подскажите мою ощибку.

P.S. Пож. не отправляйте на разные статьи, кучу статей уже прочел.

  Ответить  
 
 автор: cheops   (14.08.2011 в 19:04)   письмо автору
 
   для: daniel20   (14.08.2011 в 17:06)
 

>1. в файле hosts из WINDOWS прописываю: *.localhost;
Хм... а это в windows работает? Попробуйте сначала наладить эту схему для явно прописанного хоста site1.localhost

  Ответить  
 
 автор: daniel20   (14.08.2011 в 22:34)   письмо автору
 
   для: cheops   (14.08.2011 в 19:04)
 

A можно подробнее?

  Ответить  
 
 автор: cheops   (15.08.2011 в 09:02)   письмо автору
 
   для: daniel20   (14.08.2011 в 22:34)
 

1. Сначала наладьте работу одного виртуального хоста без mod_rewrite
2. Наладьте работу нескольких виртуальных хостов
3. Добавьте mod_rewrite-преобразования
4. Поэкспериментируйте с *.localhost
Не переходите от этапа на на этап, пока не добъетесь работоспособности предыдущего, чтобы точно знать какая директива вызывает сбой.

  Ответить  
 
 автор: daniel20   (15.08.2011 в 10:36)   письмо автору
 
   для: cheops   (15.08.2011 в 09:02)
 

тогда поставлю вопрос по другому, как в хостах виндовса написать вот это: *.localhost? Потому что такой вариант не работает.
если в место *.localhost поставить куча имен поддоменов, все работает на отлично.

  Ответить  
 
 автор: cheops   (15.08.2011 в 11:40)   письмо автору
 
   для: daniel20   (15.08.2011 в 10:36)
 

Файлом host это вообще не решить, это нужно DNS-сервер разворачивать, и то не уверен, что там допускается синтаксис для создания произвольного неограниченного количества доменов третьего уровня. А в почему такая проблема вообще возникла? Может есть обходной путь её решения (в конце-концов можно автоматизировать создание таких доменов скриптом)?

  Ответить  
 
 автор: daniel20   (15.08.2011 в 16:48)   письмо автору
 
   для: cheops   (15.08.2011 в 11:40)
 

проблему решил таким образом: На реале поменял ДНС заработало. На локале, поработаю и без этого наворота потому что по данным из интернета узнал что стандартными средствами Виндовс не поддерживает такой формат: *.localhost.; Тоесть если нужна н-ая количество поддоменов тогда надо только руками подобавлять. тема закрыта. :)

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования