svn apache .htaccess rhel5 tortoisesvn

svn - ¿Por qué Subversion no permite enviar archivos.htaccess?



apache rhel5 (6)

Subversion se sirve desde un servidor Apache que también utiliza .htaccess para el control de acceso, por lo que podría estar impidiendo que haga algo que no tiene la intención de hacer.

No puedo enviar archivos .htaccess desde mi cliente Windows SVN (TortoiseSVN). El error que se devuelve es:

No se pudo leer la línea de estado: el host remoto cerró forzosamente la conexión existente.

Y aquí está básicamente lo que mi vhost parece en Apache:

<VirtualHost *:80> DocumentRoot /var/www/mydomain.com/legacy/trunk/html ServerName mydomain.com <Directory /var/www/> FileETag MTime Size AllowOverride All </Directory> <Directory /var/www/tools> AllowOverride All </Directory> <Location /svn> DAV svn SVNPath /var/svn/repos/MyRepo # Limit write permission to list of valid users. # Require SSL connection for password protection. # SSLRequireSSL ErrorDocument 404 default AuthType Basic AuthName "Authorization Realm" AuthUserFile /etc/httpd/conf/.htpasswd Require valid-user </Location> </VirtualHost>

¿Cómo se puede cambiar esto para que se puedan comprometer los archivos .htaccess?


verifique el archivo de registro de errores de apache. Es posible que vea información adicional sobre por qué el servidor svn no pudo finalizar la confirmación.


¿Hay otros archivos comprometidos desde TortoiseSVN?

Si la confirmación funciona desde un cliente SVN en la misma casilla que TortoiseSVN en la misma copia de trabajo (¿se puede verificar?), Entonces supongo que las diferentes versiones de SVN y TortoiseSVN causarán el problema.

TortoiseSVN -> About informará que la versión del cliente SVN fue creada con. Verifique que las versiones de su cliente / servidor sean compatibles .


Verifique otros archivos de configuración de Apache. En mi /etc/apache2/modules.d/00_default_settings.conf predeterminado (en una instalación gentoo), tengo una FilesMatch "^.ht" que FilesMatch "^.ht" Deny from all .

Sugeriría ejecutar un grep -r -i "//.ht" * del directorio / etc / apache o / etc / httpd o / etc / apache, para ver qué se te ocurre.

También puede ser una directiva AccessFileName , así grep para eso también.


<Files ~ "^/.ht"> Order allow,deny Allow from all Satisfy All </Files>

Esto funcionó para mí también. Con una ligera complejidad lo estaba haciendo en un servidor plesk.

Después de agregar las líneas anteriores a mi archivo vhost creado en

/var/www/vhosts/system/[your domain]/conf

Corrí a continuación para reconstruir los archivos conf

/usr/local/psa/admin/sbin/httpdmng --reconfigure-domain [your domain]

y el comit funcionó!

Gracias, espero que esto ayude a las personas que usan plesk


Acabo de enterarme de cómo solucionar ese problema: simplemente ponga esto en su configuración de host virtual para anular el http.conf global:

<Files ~ "^/.ht"> Order allow,deny Allow from all Satisfy All </Files>

Fuente

ESTA es la respuesta correcta (probada), pero el operador abandonó su pregunta: /