Difference between revisions of "Няколко домейна с един IP адрес"

From Ilianko
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
== По подразбиране ==
+
==Виртуален Хост==
 +
 
 +
Ако няколко имена на домейни сочат към един и същ IP адрес и всяко име зарежда различен сайт, всеки сайт работи като виртуален хост.
 +
 
 
Управлението на няколко имена на домейни разположени на един web сървър се активира с директивата: <code> [http://httpd.apache.org/docs/current/mod/core.html#namevirtualhost NameVirtualHost] </code>
 
Управлението на няколко имена на домейни разположени на един web сървър се активира с директивата: <code> [http://httpd.apache.org/docs/current/mod/core.html#namevirtualhost NameVirtualHost] </code>
  
Line 7: Line 10:
 
  NameVirtualHost *:80
 
  NameVirtualHost *:80
 
  ...
 
  ...
 +
 +
Съществува един виртуален хост конфигуриран в:
 +
/etc/apache2/site-enabled/000-default
  
 
== Добавяне на виртуални хостове ==
 
== Добавяне на виртуални хостове ==
  
Ако няколко имена на домейни сочат към един и същ IP адрес и всяко име зарежда различен сайт, всеки сайт е настроен на виртуален хост.
+
Ако няколко имена на домейни сочат към един и същ IP адрес и всяко име зарежда различен сайт, всеки сайт работи като виртуален хост.
  
Добавянето на нов виртуален хост
+
''' ''Първият описан  виртуален хост се отваря по подразбиране.''' Това е в случаите, ако се достърпва директно IP адреса на web сървъра или се поиска неконфигуриран домейн''
  
След добавяне на един виртуален хост, главната (root) директорията на web сървъра (www) се деактивира.
+
За да добавите виртуален хост, може да създадете нов текстов файл в директория /etc/apache2/sites-enabled/ със следното съдържание:
 
 
Първият описан  виртуален хост се отваря по  подразбиране.
 
 
 
За да добавите виртуален хост, в [[Инсталиране на Apache, Linux/Ubuntu#конфигурация|конфигурацията на Apache]] добавете.
 
Може да създадете нов текстов файл в директория /etc/apache2/sites-enabled/ със следното съдържание:
 
  
 
  <VirtualHost *:80>
 
  <VirtualHost *:80>
Line 29: Line 30:
  
 
=== Няколко имена към една директория ===
 
=== Няколко имена към една директория ===
 +
 
  <VirtualHost *:80>
 
  <VirtualHost *:80>
 
   ServerName www.domain.tld
 
   ServerName www.domain.tld
Line 34: Line 36:
 
   DocumentRoot /www/domain
 
   DocumentRoot /www/domain
 
  </VirtualHost>
 
  </VirtualHost>
 
  
 
== Още ==
 
== Още ==
Line 41: Line 42:
 
  ...
 
  ...
  
и съответно
+
и съответно примерно, ако има https на порт 443.
  
  <VirtualHost *:80>
+
  <VirtualHost *:443>
 
   ServerName www.domain.tld
 
   ServerName www.domain.tld
 
   '''ServerAlias domain.tld *.domain.tld'''
 
   '''ServerAlias domain.tld *.domain.tld'''
Line 49: Line 50:
 
  </VirtualHost>
 
  </VirtualHost>
  
Примерно ако има https на порт 443.
+
 
  
 
[[Category:Apache]]
 
[[Category:Apache]]

Latest revision as of 19:05, 2 March 2012

Виртуален Хост

Ако няколко имена на домейни сочат към един и същ IP адрес и всяко име зарежда различен сайт, всеки сайт работи като виртуален хост.

Управлението на няколко имена на домейни разположени на един web сървър се активира с директивата: NameVirtualHost

При инсталация на Apache2 в Ubuntu опцията е добавена по подразбиране и се намира в

/ect/apache2/ports.conf

NameVirtualHost *:80
...

Съществува един виртуален хост конфигуриран в:

/etc/apache2/site-enabled/000-default

Добавяне на виртуални хостове

Ако няколко имена на домейни сочат към един и същ IP адрес и всяко име зарежда различен сайт, всеки сайт работи като виртуален хост.

Първият описан виртуален хост се отваря по подразбиране. Това е в случаите, ако се достърпва директно IP адреса на web сървъра или се поиска неконфигуриран домейн

За да добавите виртуален хост, може да създадете нов текстов файл в директория /etc/apache2/sites-enabled/ със следното съдържание:

<VirtualHost *:80>
   ServerName www.domain.tld
   DocumentRoot /var/www/domain
</VirtualHost>

Тогава директорията /var/www/domain ще е роот директорията за домейна www.domain.tld

Няколко имена към една директория

<VirtualHost *:80>
  ServerName www.domain.tld
  ServerAlias domain.tld *.domain.tld
  DocumentRoot /www/domain
</VirtualHost>

Още

Ако искате да има виртуални хостове и на другите портове, те също трябва да се обяват.

NameVirtualHost *:port
...

и съответно примерно, ако има https на порт 443.

<VirtualHost *:443>
  ServerName www.domain.tld
  ServerAlias domain.tld *.domain.tld
  DocumentRoot /www/domain
</VirtualHost>