Я использую Apache (и mod_dav_svn) для доступа к SVN-репозиториям на моем сервере через https. Проверка репозиториев и добавление, удаление или редактирование файлов работает безупречно, но когда я переименую или копирую файл, сервер возвращает 400 Bad Request при фиксации. Конфигурацияsvn COPY results in 400 Bad Request
Apache:
<VirtualHost *:443>
ServerName ***
SSLEngine on
SSLCertificateChainFile /etc/ssl/certs/sub.class1.server.ca.pem
SSLCertificateFile /etc/ssl/certs/***.crt
SSLCertificateKeyFile /etc/ssl/private/***.key
<Location />
DAV svn
SVNParentPath /var/local/svn
SVNListParentPath on
Order deny,allow
Allow from all
</Location>
<LocationMatch /.+>
AuthzSVNAccessFile /var/local/conf/access.authz
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /var/local/conf/.htpasswd
require valid-user
</LocationMatch>
</VirtualHost>
Точное сообщение об ошибке:
svn: E175002: Commit failed (details follow):
svn: E175002: COPY of /***/!svn/bc/94/***: 400 Bad Request (https://***)
SVN сервер:
$ svnadmin --version
svnadmin, version 1.6.17 (r1128011)
Клиент SVN используется мой IDE (IntelliJ Idea 11):
Version: 1.7
Format: 29
К сожалению, я не мог найти никаких намеков на проблему в журнале ошибок apache. Любые предложения по устранению этой проблемы?
EDIT: Я заметил, что изменение конфигурации в
<LocationMatch /.+>
DAV svn
AuthzSVNAccessFile /var/local/conf/access.authz
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /var/local/conf/.htpasswd
require valid-user
</LocationMatch>
исправляет проблему и позволяет мне использовать SVN копию, но когда я пытаюсь обновить свою локальную рабочую директорию теперь, я получаю эту ошибку:
svn: E190001: Unusable URI: it does not refer to this repository
svn: E175002: REPORT of '/.+/***/!svn/vcc/default': 500 Internal Server Error (***)
Ошибка в журнале ошибок апача:
[Thu Jan 23 18:00:18 2014] [error] [client 94.222.125.77] Could not parse 'src-path' URL. [500, #190001]
[Thu Jan 23 18:00:18 2014] [error] [client 94.222.125.77] Unusable URI: it does not refer to this repository [500, #190001]
Какую версию Subversion на клиенте и сервере? –
$ svnadmin --version svnadmin, версия 1.6.17 (r1128011) Рабочая копия на моем ноутбуке на формат 29 (выше формат не поддерживается моим IDE (IntelliJ Idea 11) пока) – Dero
Вы действительно не должны используйте LocationMatch. Просто поместите все в –