Как настроить apache2 и домены на домашнем сервере?

Введение
Итак. Есть домашний сервер, на нем стоит Debian(без графических дополнений).
Так же были установлены apache2 php5 mysql и кое как настроены.
Сервер подключен к маршрутизатору(dlink320),маршрутизатор к интернету. (вся настройка идет по ssh)
IP статический и белый.
Так же был куплен домен в .ru зоне.

Ну и соответственно есть несколько вопросов.

1. Я написал в саппорт хостера, чтобы они сменили NS купленного домена на мой IP. Это правильное решение?
т.к есть же некие сторонние днс сервера пост на хабре, но я пока не понимаю зачем они нужны.

2. было созданно несколько заготовок под сайты (например test.ru, other.ru diplom.ru и т д)
и в apache2/sites-available были созданы конфиги под них,
<VirtualHost *:80>
	ServerAdmin webmaster@localhost
DocumentRoot /var/sites/diplom/www
	<Directory />
		Options FollowSymLinks
		AllowOverride All
		AddType application/x-httpd-php .html
	</Directory>
	<Directory /var/sites/diplom/www/>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride All
		Order allow,deny
		allow from all
		AddType application/x-httpd-php .html
	</Directory>
</VirtualHost>


но если я вбиваю в браузере свой ip(109.172.68.76) то выдается только тот сайт, который прописан в
sites-available/default (test.ru)
как перейти на другие заготовки?
в /etc/hosts прописанно
127.0.1.1 test.ru
127.0.1.2 diplom.ru

3. Возможно мне нужно будет знать, что то еще?

Спасибо
  • Вопрос задан
  • 20264 просмотра
Решения вопроса 2
foxmuldercp
@foxmuldercp
Системный администратор, программист, фотограф
первое - Для обслуживания любой доменной зоны нужен один, а по стандартам минимум два dns сервера.
Если у вас поднят и корректно настроен днс сервер, можете в админ панели Вашего домена у регистратора прописать Ваш домашний сервер как DNS сервер.

В Вашем днс сервере должна быть корректно описанана днс зона для Вашего domain.zone
in a, mx, www алиасы, указывающие на "белый" ip вашего домашнего сервера.
в веб сервере надо указать что есть виртуал хост domain.zone, с корневым каталогом /var/www/domain.zone и подкаталогами /var/www/forum как forum.domain.zone
взяты мной для примера.
ну и да, Ваш домашний сервер теперь должен работать круглосуточно 24/7/365, быть доступен по 53 и 80 портам, а так же, если вы прописали на него MX, и 25 порт для приёма почты для домена.

Поздравляю, Вы сделали сайт непонятно зачем живущий у Вас дома, вместо того чтобы за пару баксов в месяц (это дешевле, чем оплачивать счета за свет) купить простейшую виртуалку у любого хостера вроде hetzner или в любом облаке вроде amazon/azure c реальной доступностью 24/7/365

теперь остаётся только смотреть за скриптами, что Вашу машину не проломали по уязвимостям, беспокоиться за её работу.

Из вариантов, конечно, можно развернуть виртуалку у себя на хосте, чтобы не мешала работе и не отжирала все ресурсы, но это уже следующий шаг
Ответ написан
Комментировать
Ridzhi
@Ridzhi
На вершине пищевой цепочки
Вот вам пошаговая инструкция, как запустить сайт по адресу supersite на виртуальном хосте:
1. Открываем /etc/hosts
2. Пишем 127.0.0.1 supersite
3. Открываем /etc/apache2/sites-available/default, копируем все и закрываем.( открываем через консоль sudo gedit /etc/apache2/sites-available/default), иначе может не получится скопировать.
4. Далее пишем в консоле sudo gedit /etc/apache2/sites-available/supersite. Вставляем то, что скопировали . Теперь меняем следующее:
- ServerName supersite
- DocumentRoot путь до папки supersite
- В первых двух блоках, приблизительно такого вида
<Directory /home/vasya/public_html/test>
        Options FollowSymLinks
	AllowOverride None
</Directory>

меняете путь на тот, что прописали в DocumentRoot, то есть опять путь до папки вашего сайта.
Сохраняете и закрываете.
5. В консоле sudo a2ensite supersite (Эта команда активизирует ваш сайт, создает для него конфиг в папке sites-enabled, которая находится там же где и sites-available)
6. В консоле sudo /etc/init.d/apache2 restart
Далее запускаем и все должно работать.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
Anonym
@Anonym
Программирую немного )
Возможно мне нужно будет знать, что то еще?

Точно нужно будет знать что-то еще. Очень много вам нужно узнать.
Ответ написан
Комментировать
egor_nullptr
@egor_nullptr Куратор тега Linux
Если вы хотите, чтобы с вашего компьютера по доменам test.ru и diplom.ru открывались сайты с вашего сервера, то пропишите для них нужный IP в /etc/hosts (или c:\Windows\System32\drivers\etc\hosts) на своём компьютере.
Ответ написан
Комментировать
VBKesha
@VBKesha
Как минимум надо разобраться с настройкой виртуальных хостов и директивы ServerName
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы