У меня проблема с моей конфигурацией Apache, в частности, с тем, как она взаимодействует с модом SVN DAV.
Я хочу иметь возможность domain.com
укажите на мой сайт, svn.domain.com
чтобы указать на мой каталог svn (который в настоящее время находится за пределами моего каталога public_html) и чтобы оба были доступны через https.
У меня это работает по большей части, но если я настрою явный VirtualHost для svn
поддомен, он не позволяет приложению svn получить доступ к репозиториям (вместо этого просто выдает ошибку «репозиторий перемещен навсегда»), я могу просматривать репозитории нормально.
моя конфигурация выглядит примерно так:
<VirtualHost *:443>
ServerName domain.com
ServerAlias www.domain.com svn.domain.com
DocumentRoot /path/to/website/dir
...
#stuff for SSL cert etc.
</VirtualHost>
<VirtualHost *:80>
ServerName domain.com
ServerAlias www.domain.com
DocumentRoot /path/to/website/dir
...
</VirtualHost>
<Location /repo>
DAV svn
SVNPath /path/to/repos
... #auth details
</Location>
В основном это работает, но при просмотре svn.domain.com
открывает мой веб-сайт и просматривает domain.com/repo
вызывает репозиторий (svn.domain.com/repo
работает отлично, domain.com
тоже отлично работает), возможно, я бы хотел domain.com/repo
для отображения набора веб-страниц о моем проекте, документах и т. д., svn.domain.com
в идеале будет указывать либо на ничего, либо на список доступных репозиториев, либо на отдельную страницу, либо на что-то еще. Я думал, что разобрался с файлами конфигурации apache, но этот меня ставит в тупик!
У вас должен быть отдельный <VirtualHost>
директива для вашего svn.domain.com
и domain.com / www.domain.com
домены. Похоже, вы пытаетесь втиснуть оба в первую <VirtualHost>
. После того, как вы их разделите, поместите директивы SVN внутри svn.domain.com
хост.