Как пропустить SVN (subversion) через прокси-сервер
Исходная задача: есть сервер в локальной сети с Linux на него нужно с использованием SVN установить некоторое программное обеспечение из интернета. Доступ в интернет из сети осуществляется через прокси-сервер Squid.
Решение найдено здесь: Subversion (SVN) through proxy. Приведу примерный перевод.
SVN обычно работает через протокол HTTP и использует большее количество методов нежели обычные клиенты c GET и POST. А широко распространённый сервер Squid не работает с другими методами до тех пор, пока не будут внесены соответствующие изменения в его конфигурацию.
Итак, выполняем настройку:
- На сервере, которому требуется выход в интернет для SVN, создаём или изменяем файл /etc/subversion/servers, либо файл .subversion в домашнем каталоге, и заносим в него строки:
- На прокси-сервере изменяем конфигурацию Squid в squid.conf, добавляя поддержку расширенных команд (FAQ SVN):
<code>[global] http-proxy-host=proxyhost http-proxy-port=3128</code>
где proxyhost - это адрес прокси-сервера;
3128 - порт, на котором работает прокси.
<code>extension_methods REPORT MERGE MKACTIVITY CHECKOUT</code>
После перезапуска Squid всё работает.
А возможно ли кэшировать SVN ? Я читал вроде что сквид кэширует только GET запросы или что-то того. А при работе с SVN в access.log пишет TCP_MISS PROPFIND DIRECT т.е. показывает что явно береться не из кэша.