[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Поддомены в Apache
jungle
Хотел сделать поддомен у себя на компьютере, у меня денвер стоит (апач на виртуальном диске). Нашел в интернете:

В .htaccess добавьте записи RewriteEngine On и RewriteBase /

Создайте директорию sites. Каждая папка внутри директории sites автоматически становится субдоменом.

Добавьте в секцию VirtualHost вашего домена следующие строки:

<VirtualHost *:80>
DocumentRoot /sites/
ServerName 1.ru
ServerAlias *.1.ru

ErrorLog logs/1.ru-error_log
CustomLog logs/1.ru-access_log common
ServerAlias *.1.ru
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.1.ru$
RewriteCond %{HTTP_HOST} ^((.*)\.)1.ru$
RewriteRule ^/(.*) /%2/$1

</VirtualHost>

Куда это вписать? В httpd? В vhosts?

Настройка DNS

В файле описания зоны или в настройках, которые вам предоставляет регистратор домена, создайте новый субдомен с именем '*' (звездочка, без кавычек) и IP веб-сервера, на котором будут находится все субдомены.


А это вообще как?



Спустя 9 минут, 48 секунд (14.08.2010 - 21:53) Lenarfate написал(а):
как должен выглядеть поддомен твой?

Спустя 6 минут, 58 секунд (14.08.2010 - 22:00) Lenarfate написал(а):
если надо так forum.site.ru
то надо просто создать папку forum там же, где и www.и не надо ничего прописывать. или что ты имеешь ввиду??

Спустя 1 минута, 21 секунда (14.08.2010 - 22:01) jungle написал(а):
Да любой поддомен - mypage.1.ru или supersite.1.ru

Мне этот способ понравился, только рассказано непонятно, и, например, что такое "файл описания зоны"?

Спустя 1 минута, 46 секунд (14.08.2010 - 22:03) jungle написал(а):
Как ничего прописывать не надо, а ДНС настроить? И в какие файлы писать: В httpd? В vhosts?

Спустя 18 секунд (14.08.2010 - 22:03) Lenarfate написал(а):
ничего писать не надо. еще раз.
надо просто создать папку mypage там же, где и www
попробуй

Спустя 2 минуты, 9 секунд (14.08.2010 - 22:06) Lenarfate написал(а):
ааа!тебе надо динамический поддомен.понял .ща

Спустя 1 минута, 42 секунды (14.08.2010 - 22:07) Lenarfate написал(а):
пропиши это дело в httpd.conf smile.gif

Спустя 2 минуты, 10 секунд (14.08.2010 - 22:09) jungle написал(а):
Прописал, но надо еще DNS настроить, а это где делается?

Спустя 7 минут, 9 секунд (14.08.2010 - 22:17) Lenarfate написал(а):
хм, а возможно ли это под виндой?

Спустя 2 минуты, 46 секунд (14.08.2010 - 22:19) Lenarfate написал(а):
имхо с денвером такое не прокатит. только папочки создавать

Спустя 1 минута, 43 секунды (14.08.2010 - 22:21) jungle написал(а):
Ну, в смысле, с апачем под виндой так не прокатит?

Спустя 2 минуты, 50 секунд (14.08.2010 - 22:24) jungle написал(а):
а как вообще DNS тут настроить, под линукс, допустим?

Спустя 1 минута, 59 секунд (14.08.2010 - 22:26) Lenarfate написал(а):
вряд ли

Спустя 2 минуты, 23 секунды (14.08.2010 - 22:28) Lenarfate написал(а):
попробуй под линухой. по этому полно тем в гугле

Спустя 15 часов, 25 минут, 46 секунд (15.08.2010 - 13:54) jungle написал(а):
Да в гробу я видал этот линукс!


В-общем, так.

Нужно создать директорию sites в папке www. Каждая папка внутри директории sites будет определяться как поддомен.

В .htaccess ничего добавлять не надо.

Настройка DNS

Я скачал TreeWalk DNS server 8.21, он установился в C:\WINDOWS.0\system32\dns\etc

В файле local.conf написать:
zone "1.ru" {
type master;
file "MyInc.txt";
allow-update { none; };
allow-transfer { none; };
notify no;
};

В файле MyInc.txt:
$TTL  43200
@ SOA @ localhost. (
2000092940 ; serial
3600 ; refresh
900 ; retry
1209600 ; expire
86400 ; minimum TTL
)
@ NS localhost.
;@ NS localhost.
@ A 127.0.0.1
* A 127.0.0.1 ; вот эта строка привязывает все субдомены к одному IP,
; распределеять запросы по папкам будет сервер.
;@ MX 10 mail

Настройка Апача:

В httpd-vhosts.conf добавить:
<VirtualHost *:80>
ServerAdmin webmaster@1.ru
DocumentRoot "C:/apache/1.ru/www"
ServerName 1.ru
ServerAlias 1.ru
ErrorLog "C:/apache/1.ru/error.log"
CustomLog "C:/apache/1.ru/access.log" common
</VirtualHost>

<VirtualHost
*:80>
DocumentRoot "C:/apache/1.ru/www/sites"
ServerName 1.ru
ServerAlias *.1.ru
ErrorLog logs/1.ru-error_log
CustomLog logs/1.ru-access_log common
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.1.ru$
RewriteCond %{HTTP_HOST} ^((.*)\.)1.ru$
RewriteRule ^/(.*) /%2/$1
</VirtualHost>

C Денвером пробовал - не работает, он изменяет файл vhosts.conf удаляя настройки.


Вот еще что.

Возможно понадобится в "подключении по локальной сети" (не в "интернет-свойствах"!) настроить TCP/IP - в "альтернативный DNS-сервер" вписать 127.0.0.1 , и не забывайте включать TreeWalk DNS, служба будет работать, но сам он может быть выключен.

Спустя 4 часа, 39 минут, 7 секунд (15.08.2010 - 18:33) jungle написал(а):
Вот еще нашел про Posadis DNS-related tools, сам не пробовал, но, может быть, кому-то подойдет этот вариант:

Альтернативный бесплатный локальный dns сервер для Windows: как скачать и настроить
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.