Назад | Перейти на главную страницу

Apache2 VirtualHost на Debian не работает

У меня проблемы с конфигурацией Apache2. Я уже пытался поискать документацию в Интернете (сайт Apache, сайт Debian, здесь, на serverfault и т. Д.), Но ничего особо не помогает.

Я пробовал разные конфигурации, но моя текущая конфигурация следующая (/ и т.д. / apache2 / сайты-доступные / по умолчанию):

<VirtualHost *:80>
    ServerAdmin my@mysite.dev
    ServerName mysite.dev
    ServerAlias mysite.dev
    DocumentRoot /var/www/mysite.dev/httpdocs/
    ErrorLog ${APACHE_LOG_DIR}/error.log
    LogLevel warn
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<VirtualHost *:80>
    ServerAdmin admin@livesite.com
    ServerName livesite.com
    ServerAlias www.livesite.com
    DocumentRoot /var/www/livesite.com/httpdocs/
    <Directory /var/www/livesite.com/httpdocs/>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
    </Directory>
    ErrorLog ${APACHE_LOG_DIR}/error.log
    LogLevel warn
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

mysite.dev - это просто запись в файле hosts на моем клиентском компьютере, а liveite.com - это настоящая DNS-запись, которая будет разрешена на тот же IP-адрес, что и IP-адрес, установленный в файле hosts для mysite.dev.

Проблема в том, что когда я пытаюсь набрать mysite.dev в своем браузере, он автоматически переходит на сайт lifeite.com.

Я пытался иметь разные / etc / apache2 / sites-enabled / files (/etc/apache2/sites-enabled/mysite.dev, /etc/apache2/sites-enabled/livesite.com) - и, конечно, с фактическими сайтами -доступны связанные файлы, но достигают тех же результатов. Я попытался получить максимум информации о error.log и access.log, но ничего не вижу.

Мой httpd.conf содержит:

AccessFileName .htaccess

И у меня нет файла /etc/apache2/conf.d/virtual.conf.

Любая помощь будет принята с благодарностью - если я не предоставил достаточно информации, сообщите мне, я сделаю все возможное, чтобы предоставить всю необходимую информацию.

Спасибо

Попробуй изменить

<VirtualHost *:80>

к

<VirtualHost mysite.dev:80>

и

<VirtualHost livesite.com:80>

Я думаю два *:80 virtualhosts - это неоднозначная конфигурация веб-сервера.

Это просто дикая догадка, но выглядит ли инструкция Include в httpd.conf примерно так: Include /etc/apache/sites-enabled/*.conf

В таком случае переименуйте /etc/apache2/sites-enabled/mysite.dev в /etc/apache2/sites-enabled/mysite.dev.conf и посмотрите, поможет ли это.

В качестве альтернативы, есть ли у вас где-нибудь выражение «NameVirtualHost *: 80»? Я предпочитаю вставлять его в httpd.conf или ports.conf при установке Apache на базе Debian.

в вашем файле хоста попробуйте установить mysite.dev на 127.0.0.1 вместо ip компьютера, а также убедитесь, что mysite.dev является первым виртуальным хостом, определенным в apache, надеюсь, это решит вашу проблему

Спасибо @law и @ tristan625 за ответы.

Моя проблема заключалась в том, что Firefox делал что-то глупое - когда я попробовал последнюю конфигурацию (все в httpd.conf) с хромом, она просто сработала (а также FF работал, как только я его перезапустил).

Глупая проблема, на которую зря потратил несколько часов моей жизни!