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

Виртуальный хост Apache, указывающий на неправильный корень документа

Я запускаю Linux mint и пытаюсь настроить виртуальный хост с apache.

Я добавил следующий файл в / etc / apache2 / sites-available / (он скопирован из файла по умолчанию в этом каталоге)

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        ServerName testsite.dev
        DocumentRoot /home/chris/Projects/web/testsite

        <Directory /home/chris/Projects/web/testsite>
            Allow from all
            AllowOverride All
            Order allow,deny
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
            AllowOverride None
            Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
            Order allow,deny
            Allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog ${APACHE_LOG_DIR}/access.log combined

        Alias /doc/ "/usr/share/doc/"
        <Directory "/usr/share/doc/">
            Options Indexes MultiViews FollowSymLinks
            AllowOverride None
            Order deny,allow
            Deny from all
            Allow from 127.0.0.0/255.0.0.0 ::1/128
        </Directory>
    </VirtualHost>

Я также добавил запись в свой файл hosts (/ etc / hosts), которая будет:

127.0.0.1    testsite.dev

Я также включил сайт и перезагрузил службу apache с помощью:

a2ensite testsite 
service apache2 reload

Однако когда я перехожу к http://testsite.dev он обслуживает страницы из / var / www / вместо / home / chris / Projects / web / testsite.

Что я делаю не так?

Я бы хотел проверить несколько вещей:

  • Убедитесь, что у вас есть «NameVirtualHost ***: 80» в вашей конфигурации. Если "*: 80" отличается, это может конфликтовать со значением в "VirtualHost" (в общем, проблем меньше, если они совпадают).
  • Убедитесь, что у вас не определен другой «VirtualHost», который может конфликтовать с этим (я предполагаю, что все в «sites-available», а также в любом другом файле конфигурации Apache).
  • Проверьте журнал ошибок, чтобы убедиться, что ничего «плохого» не происходит. Также может быть полезно включить и проверить журнал доступа.
  • Дважды проверьте, что файлы / содержимое в двух каталогах соответствуют вашим представлениям. Если вы их каким-то образом перепутали, возможно, он работает должным образом.
  • Остановите и запустите службу Apache. Теоретически перезагрузка должна работать, но на всякий случай (я не в первый раз вижу, что перезагрузка не удалась, а остановилась / началась работа).

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