Svn reponuzu kullanım amacına daha uygun hale getirmek için konfigürasyonda bir takım değişiklikler yapmakta fayda olacaktır. Commit edilecek dosya boyutlarına bir sınırlama getirerek svn reponuzun bir çöplük haline gelmesini ve gereksiz yere şişmesini (fazla yer kaplamasını) engelleyebilirsiniz. Bilindiği üzere şimdilik svn ‘de commit edilen bir dosyayı tamamen silmek mümkün değil. Bununla ilgili yapılan bir çalışma mevcut fakat henüz sonuca ulaşmış değil. İlgili çalışmaya (svn obliterate) şu adresten ulaşabilirsiniz.

Subversion commit limiti belirleme işlemi için apache web sunucusunun LimitRequestBody özelliğinden faydalanabilirsiniz.

Apache Limit Request Body

Subversion.conf dosya içeriğine ” LimitRequestBody <K cinsinden boyut> ” satırını ekleyerek sınırlamayı yapabilirsiniz. Aşağıdaki örnekte 25MB ‘lık bir sınırlama yapılmıştır.

Yeni subversion.conf dosya içeriği;

LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
LoadModule dontdothat_module modules/mod_dontdothat.so

Alias /svn /var/www/svn
<Location /svn>
 DAV svn
 SVNParentPath /var/www/svn/
 AuthType Basic
 AuthName "Subversion repositories"
 AuthUserFile /etc/svn-auth-users
 Require valid-user
 LimitRequestBody 25000000
</Location>

İlgili değişikliği gerçekleştirdikten sonra apache servisini restart ederek test edebilirsiniz.

[[email protected]]# systemctl restart httpd.service

Belirlenen dosya upload limiti üzerinde bir dosya commit etmek istediğinizde aşağıdaki gibi hata alınacaktır.

SVN Upload hataİlgili apache logları aşağıdaki şekilde olacaktır.

[[email protected]]# tailf /var/log/httpd/error_log

[Wed Apr 15 07:39:58.507247 2015] [dav:error] [pid 635] (-102)Unknown error -102: [client 192.168.233.1:62436] An error occurred while reading the request bod 500, #0]
[Wed Apr 15 07:39:58.507265 2015] [dav:error] [pid 635] [client 192.168.233.1:62436] mod_dav_svn close_stream: error closing write stream [500, #185004]
[Wed Apr 15 07:39:58.507269 2015] [dav:error] [pid 635] [client 192.168.233.1:62436] Unexpected end of svndiff input [500, #185004]

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Time limit is exhausted. Please reload CAPTCHA.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Post Navigation