Показать статистику
0 голосов
от (220 баллов)

Всем доброго времени суток. Пытаюсь настроить 2 сайта на одном IP. Делал все по инструкции https://www.digitalocean.com/community/tutorials/apache-ubuntu-14-04-lts-ru

Как итог - при вводе 2х адресов выдается один и тот же сайт. Может кто подсказать что пошло не так?

1тыс. просмотров 2 ответов
от (17.4тыс. баллов)
0
Если я вас правильно понял, вы обращаетесь к двум разным сайтам по имени, но вас перекидывает на один сайт? Покажите пожалуйста кусок конфига с виртуальными хостами. Попробуем разобраться.

2 Ответы

0 голосов
от (220 баллов)

Я пробовал несколько вариантов. Первый конфиг- все в одном файле, Второй (он на данный момент используется ) это  2 конфига.

Для первого сайта: 

<VirtualHost *:80>
    ServerAdmin admin@domain1
    ServerName domain1.com
    ServerAlias www.domain1.com
    DocumentRoot /var/www/domain1.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    <IfModule mod_dir.c>
        DirectoryIndex index.html index.pl index.cgi index.html index.xhtml $
    </IfModule>
</VirtualHost>

Для второго: 

<VirtualHost *:80>
    ServerAdmin admin@domain2
    ServerName domain2.com
    ServerAlias www.domain2.com
    DocumentRoot /var/www/domain2.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    <IfModule mod_dir.c>
        DirectoryIndex index.html index.pl index.cgi index.html index.xhtml $
    </IfModule>
</VirtualHost>
от (17.4тыс. баллов)
0

Странно, вроде ошибок нет. Покажите вывод команды: 

apache2ctl -S 
0 голосов
от (220 баллов)
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
VirtualHost configuration:
*:80                   is a NameVirtualHost
         default server domain1 (/etc/apache2/sites-enabled/domain1.conf:1)
         port 80 namevhost domain1 (/etc/apache2/sites-enabled/domain1.conf:1)
                 alias www.domain1
         port 80 namevhost domain2 (/etc/apache2/sites-enabled/domain1.conf:1)
                 alias www.domain2
ServerRoot: "/etc/apache2"
Main DocumentRoot: "/var/www/html"
Main ErrorLog: "/var/log/apache2/error.log"
Mutex default: dir="/var/run/apache2/" mechanism=default
Mutex mpm-accept: using_defaults
Mutex watchdog-callback: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="www-data" id=33
Group: name="www-data" id=33
от (17.4тыс. баллов)
0
Вы обращаетесь по полному адресу к своим сайтам (включая www) ? Т.е. www.domain2 или domain2 ?
от (220 баллов)
+1
Спасибо за идею с полным адресом. Нашел в чем была причина. Вот прям  СПАСИБО! У меня еще вопрос по теме. а как правильно делать конфиг, что бы при вводе ip выдавало отдельный сайт? Пробовал вводить ip в алиас- но это не работает.
от (17.4тыс. баллов)
0

Для этого каждый сайт нужно повесить на отдельный ip. Это делается через директиву VirrtualHost:

<VirtualHost 172.134.23.21:80>
.....
</VirtualHost>

Как видно из примера выше, 172.134.23.21 - ip адрес (взят любой произвольный для наглядности)

...