Apache 2, Ubuntu - VHost не работает

Я хочу создать VHost на моей машине.

Мой конфиг:

/ и т.д. / хосты

127.0.0.1 mysite.dev

/etc/apache2/sites-available/mysite.dev

<VirtualHost *:80>
    SetEnv APPLICATION_ENV "development"
    ServerName mysite.dev
    DocumentRoot /home/michal/Public/mysite/public/frontend

    <Directory /home/michal/Public/mysite/public/frontend>
        Options Indexes FollowSymLinks Includes
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

После того как я бегу

sudo a2ensite mysite.dev
sudo /etc/init.d/apache2 restart

Теперь, когда я набираю mysite.dev в браузере, я вижу стандартный Apache index.html ("Это работает!"). Зачем? Где мне найти мою проблему?

3 ответа

Не очень понятно из вашего вопроса, что именно вы хотите достичь. Если вы хотите перенаправить на конкретный URL, скажем, HTTPS URL, то этого можно достичь с помощью следующих строк:

  <VirtualHost *:80>
     ServerName localhost:80
     RedirectMatch permanent ^(.*)$ https://localhost:8443$1
</VirtualHost>

Если вы пытаетесь настроить сервер Apache, сервер Jboss и Mod_jk, то вы можете обратиться по этой ссылке

Хорошо, об этом спрашивали, как год назад, но сегодня я столкнулся с той же проблемой, и, вероятно, найденное мной решение будет очень полезно для кого-то другого, так что вот оно.

Для меня работало переименование программных ссылок в /etc/apache2/sites-enabled, добавление расширения.conf к каждой ссылке в этой папке.

Так что, если у нас были следующие ссылки:

/etc/apache2/sites-enabled$ ls -l
lrwxrwxrwx 1 root root 23 Nov 30  2012 site1 -> ../sites-available/site1   
lrwxrwxrwx 1 root root 23 Nov 30  2012 site2 -> ../sites-available/site2

мы должны переименовать оба в site1.conf и site2.conf

/etc/apache2/sites-enabled$ sudo mv site1 site1.conf
/etc/apache2/sites-enabled$ sudo mv site2 site2.conf

и тогда, конечно, перезагрузите Apache

/etc/apache2/sites-enabled$ sudo /etc/init.d/apache2 restart

Причина, по которой это работало раньше, заключается в том, что Apache когда-то в недавнем прошлом изменил способ именования этих файлов, чтобы их можно было правильно загрузить, как описано в последних строках файла apache2.conf.

# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf

Вы видите страницу index.html по умолчанию, потому что вы не отключили виртуальный хост Apache по умолчанию. Отключите виртуальный хост Apache по умолчанию с помощью команды:

sudo a2dissite 000-default.conf

Другие вопросы по тегам