Wiele domen na VPS z Apache

Planuję wkrótce dostać VPS i mam dwie strony, które chcę hostować. Mam lokalną konfigurację vhostów dla mojego środowiska programistycznego za pomocą pliku hosta, aby poprawnie go portować.

Moje pytanie jest mam nadzieję proste: przy konfiguracji z dwóch oddzielnych domen, które wskazują na jeden serwer VPS jest Apache wystarczająco inteligentny, jak w środowisku lokalnym, aby automatycznie filtrować wszelkie żądania dla domain.com do prawidłowego VHOST, jak to robi lokalnie? Chciałbym się tylko upewnić:)

Dzięki!

Przykład o co Proszę:

Powiedz Domain1.com oraz Domain2.com oba są na moim VPS.

Gdy ktoś prosi www.Domain1.com apache widzi to i przekazuje do domain1.com plik vhost. Gdy ktoś prosi www.Domain2.com apache widzi to i przekazuje do domain2.com plik vhost.

Author: Brad F Jacobs, 2010-08-16

2 answers

Prosta odpowiedź brzmi "tak", Apache jest tak sprytny. Jeśli jesteś przyzwyczajony do używania lokalnego pliku vhost w połączeniu z plikiem hosts do symulacji domen lokalnych, ta sama technika może być zastosowana w VPS. Częścią, którą robisz z plikiem hosts, jest zasadniczo tworzenie lokalnego serwera nazw, poza tym Apache nie zna różnicy. Wystarczy ustawić dyrektywę ServerName dla każdego nazwanego vhosta i powinno działać tak samo jak lokalnie.

 10
Author: Peter O'Callaghan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-08-16 16:46:17

Przepastowanie mojej odpowiedzi z Hosting dwóch domen przy użyciu tylko jednego VPS? ponieważ tutaj jest to jeszcze bardziej istotne.

Jako początkujący, próbowałem hostować wiele domen na jednym serwerze Apache VPS. Tutoriale miały zbyt wiele informacji, które doprowadziły mnie do zamieszania.

Poniżej opisuję, dla początkujących, jak hostować wiele domen na jednym serwerze VPS z Ubuntu i Apache.

Ważne! musisz użyć konta root, aby wykonać większość szef.

Ważne! jeśli wcześniej próbowałeś wprowadzić pewne zmiany w konfiguracji apache ' a, Cofnij je.

Tworzenie Virtualhostów

Twórz foldery dla swoich domen na serwerze. Na przykład:

/home/apache/domain1

/home/apache/domain2

Put index.plik html w każdym folderze z dowolnym tekstem.

This is domain1
This is domain2

Przejdź do folderu /etc/apache2/sites-available.

Utwórz domenę plików1.conf

sudo nano domain1.conf

<VirtualHost *:80>
DocumentRoot /home/apache/domain1
ServerName domain1.com
ServerAlias www.domain1.com
</VirtualHost>

Utwórz plik domain2.conf

sudo nano domain2.conf

<VirtualHost *:80>
DocumentRoot /home/apache/domain2
ServerName domain2.com
ServerAlias www.domain2.com
</VirtualHost>

Możesz tworzyć subdomeny same sposób.

sudo nano blog.conf

<VirtualHost *:80>
DocumentRoot /home/apache/blog
ServerName blog.domain.com
ServerAlias www.blog.domain.com
</VirtualHost>

Włącz tworzenie stron

sudo a2ensite domain1.conf
sudo a2ensite domain2.conf

Restart apache

sudo service apache2 reload

Przekierowanie domeny na Serwer

Utworzone VirtualHosts będą działać tylko wtedy, gdy przekierujesz nazwę domeny na adres IP serwera. Domeny to tylko nazwy, które można przetłumaczyć na numery IP.

Lokalny komputer

Aby przetestować konfigurację na komputerze lokalnym, musisz edytować plik hosts.

sudo nano /etc/hosts
To powinno wyglądać tak.
127.0.0.1       localhost domain1.com domain2.com

Plik Hosts informuje komputer ta domena musi zostać przekierowana na maszynę lokalną.

Ważne! jeśli utworzysz wpis w pliku hosts dla istniejącej domeny, na przykład

127.0.0.1       stackoverflow.com

Stracisz dostęp do tej strony.

Serwer

Aby przekierować domenę na twój serwer WWW, musisz utworzyć lub zmodyfikować rekord DNS typu "A" dla danej domeny na adres IP Twojego serwera. Możesz to zrobić za pomocą Panelu sterowania dostarczonego przez rejestratora domeny.

Jeśli nie znasz IP adres serwera, zaloguj się na ten serwer i wpisz Wiersz poleceń:

ifconfig
 9
Author: Rafal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-12-13 19:49:57