2013-01-23 31 views
1

最近我有403錯誤問題,這是由答案hereSubversion版本庫的位置顯示在所有託管域

不過我有2個域名指向我的家庭服務器解決了,問題是他們都表現出庫

所以www.domain1.com/reposwww.domain2.com/repos顯示存儲庫,但我只想要www.domain2.com/repos來顯示它。

這是如何實現的?我嘗試將dav_svn.conf中的位置添加到我的000-default文件中,但這不起作用,我也想強制https。有什麼建議麼?

/etc/apache2/mods-enabled/dav_svn.conf

<Location /repos> 
DAV svn 
SVNParentPath /var/svn 
SVNListParentPAth on 
AuthType Basic 
AuthName "Subversion Repository" 
AuthUserFile /etc/apache2/dav_svn.passwd 
Require valid-user 
</Location> 

的/ etc/000-默認

<VirtualHost *:80> 
     ServerAdmin [email protected] 
     ServerName domain1.com 

     DocumentRoot /var/www/domain1.com 
     <Directory /> 
       Options FollowSymLinks 
       AllowOverride None 
     </Directory> 
     <Directory /var/www/domain1.com/> 
       Options Indexes FollowSymLinks MultiViews 
       AllowOverride None 
       Order allow,deny 
       allow from all 
     </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}/domain1.error.log 

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

     CustomLog ${APACHE_LOG_DIR}/domain1.access.log combined 
</VirtualHost> 
<VirtualHost *:80> 
     ServerAdmin [email protected] 
     ServerName domain2.com 
     DocumentRoot /var/www/domain2.com 
     <Directory /> 
       Options FollowSymLinks 
       AllowOverride None 
     </Directory> 
     <Directory /var/www/domain2.com/> 
       Options FollowSymLinks Indexes Multiviews 
       AllowOverride none 
       Order allow,deny 
       allow from all 
     </Directory> 
</VirtualHost> 


<VirtualHost *:443> 
    ServerAdmin [email protected] 
    ServerName domain1.com 
    DocumentRoot /var/www/domain1.com 
    SSLEngine On 
    SSLCertificateFile /etc/apache2/ssl/domain1.com.crt 
    SSLCertificateKeyFile /etc/apache2/ssl/domain1.com.key 
    SSLProtocol all 
    SSLCertificateKeyFile /etc/apache2/ssl/domain1.com.key 
    SSLProtocol all 
    SSLCipherSuite HIGH:MEDIUM 
</VirtualHost> 

<VirtualHost *:443> 
    ServerAdmin [email protected] 
    ServerName domain2.com 


    <Location repos/> 
     DAV svn 
     SVNParentPath /var/svn/ 
     AuthType Basic 
     AuthName "Repository of Ancient Knowledge" 
     AuthUserFile /etc/apache2/dav_svn.passwd 
     Require valid-user 
    </Location> 


    DocumentRoot /var/www/domain2.com 
    SSLEngine On 
    SSLCertificateFile /etc/apache2/ssl/domain2.com.crt 
    SSLCertificateKeyFile /etc/apache2/ssl/domain2.com.key 
    SSLProtocol all 
    SSLCipherSuite HIGH:MEDIUM 

</VirtualHost> 

回答

1

如果你想/ Apache2的/啓用的站點 - 只有SVN在一個虛擬主機中,您必須在此虛擬主機的容器內添加<Location>容器只有

現在/dav_svn.conf被添加到「主」網站和共享所有virthosts

+0

由於某種原因,這並沒有工作的第一次,但現在已啓用MODS-,感謝@Lazy – Neo