WebSVN с VisualSVN Server, кто-нибудь получил аутентификацию для работы? - PullRequest
8 голосов
/ 20 августа 2008

У меня VisualSVN Server , установленный на сервере Windows, обслуживающий несколько репозиториев.

Поскольку средство просмотра веб-страниц, встроенное в сервер VisualSVN, является минималистичным браузером Subversion, я хотел бы установить WebSVN поверх моих репозиториев.

Однако проблема в том, что я не могу заставить аутентификацию работать. В идеале я хотел бы, чтобы моя текущая аутентификация репозитория, как указано в VisualSVN, работала с WebSVN, так что, хотя я вижу все имена репозитория в WebSVN, я не могу фактически просматривать их без правильных учетных данных.

Посетив кэшированную копию самой верхней ссылки на в этом запросе Google , вы можете увидеть то, что я нашел до сих пор, что выглядит многообещающе.
(кажется, что главная страница блога была уничтожена, домен самой верхней страницы, на которую я ссылаюсь, - the-wizzard.de)

Там я нашел несколько функций php, которые я мог прикрепить к одному из файлов php в WebSVN. Я следил за изменениями там, но все, что мне удалось сделать, это заставить WebSVN запросить у меня имя пользователя и пароль, и независимо от того, что я ввожу, он не впустит меня.

К сожалению, php и apache для меня во многом чёрная магия.

Итак, кто-нибудь успешно интегрировал WebSVN с размещенными в VisualSVN репозиториями?

Ответы [ 5 ]

7 голосов
/ 11 февраля 2009

Я получил аутентификацию WebSVN, работающую с сервером VisualSVN, хотя и со многими собственными настройками хакерских / пробных ошибок.

Вот как я это сделал:

  1. Если вы этого еще не сделали, установите PHP вручную, загрузив zip-файл и выполнив инструкции по установке php в режиме онлайн. Я установил PHP на C: \ PHP

  2. Извлеките папку websvn в C: \ Program Files \ VisualSVN Server \ htdocs \

  3. Выполните шаги по настройке каталога websvn, то есть переименуйте configdist.php в config и т. Д. Мои репозитории были расположены в C: \ SVNRepositories, поэтому для настройки файла аутентификации я установил строку config.php Итак: $ config-> useAuthenticationFile ('C: / SVNRepositories / authz'); // Файл глобального доступа

  4. Добавьте следующее в C: \ Program Files \ VisualSVN Server \ conf \ httpd-custom.conf:

# For PHP 5 do something like this:
LoadModule php5_module "c:/php/php5apache2_2.dll"
AddType application/x-httpd-php .php


# configure the path to php.ini
PHPIniDir "C:/php"

<IfModule dir_module>
   DirectoryIndex index.html index.php 
</IfModule>

<Location /websvn/>
   Options FollowSymLinks
   AuthType Basic
   AuthName "Subversion Repository"
   Require valid-user
   AuthUserFile "C:/SVNRepositories/htpasswd"
   AuthzSVNAccessFile "C:/SVNRepositories/authz"
   SVNListParentPath on
   SVNParentPath "C:/SVNRepositories/"
</Location>

Это сработало для меня, и websvn будет показывать только те каталоги, которые авторизованы для данного пользователя. Обратите внимание, что для правильной работы необходимо предоставить всем доступ «Основной уровень», а затем отключить доступ к определенным подкаталогам для определенных пользователей. Например, у меня есть один пользователь, который не имеет доступа на основном уровне, но имеет доступ к подуровню. К сожалению, этот человек не видит ничего в websvn, даже если он напрямую ссылается на файл filedetails.php для файла, который ему разрешено просматривать. В моем случае это не имеет большого значения, потому что я все равно не хочу, чтобы он обращался к websvn, но это то, что вы хотите знать.

Кроме того, это устанавливает сервер для ssl-соединения, поэтому после его настройки адрес будет и адрес https: //, а не обычный http: //.

3 голосов
/ 24 октября 2008

Я использую VisualSVN Server, и я только что закончил установку Trac. Моя цель состояла в том, чтобы получить лучший веб-браузер для хранилища, и Trac, безусловно, один из лучших, которые я видел для Subversion. Перейти к http://www.visualsvn.com/server/trac/ установка действительно довольно проста. Да, у Trac есть система отслеживания билетов и вики-система, которую вы, возможно, не ищите, но репозиторий и браузер журналов продают ее мне.

Теперь я обнаружил, что можно отключить вики и системы отслеживания билетов, которые поставляются с Trac, просто добавив

[components]
trac.ticket.* = disabled
trac.wiki.* = disabled

до конца файла конфигурации trac.ini. Это приводит к тому, что стартовая страница вики выдает ошибку, из-за которой модуль вики не может быть найден, поэтому вы должны настроить запуск Trac либо с помощью временной шкалы (просмотр журнала), либо с помощью браузера репозитория при запуске, снова отредактировав trac.ini, добавив под заголовком [trac]:

для временной шкалы журнала по умолчанию

default_handler = TimelineModule

для браузера репозитория по умолчанию

default_handler = BrowserModule
1 голос
/ 09 декабря 2014

Если вы ищете веб-обозреватель хранилища, который является более многофункциональным, чем браузер по умолчанию, и вы используете VisualSVN Server, то выполните обновление до VisualSVN Server 3.2 или новее.

Сервер VisualSVN имеет богатый веб-интерфейс для хранилищ Subversion . В отличие от WebSVN, встроенный веб-клиент VisualSVN Server работает «из коробки» и не требует от администратора выполнения каких-либо задач по настройке.

Вы можете посмотреть живую демонстрацию здесь: http://demo -server.visualsvn.com /! /

Subversion web user interface in VisualSVN Server

1 голос
/ 31 мая 2010

Я получил это для работы с аутентификацией Windows (которая на самом деле является AuthType VisualSVN). Хитрость заключается в том, чтобы закомментировать svn auth и заменить его тем же типом текста аутентификации, что и в основном файле конфигурации. Спасибо Энтони Джонсону за разработку всех остальных деталей.

# For PHP 5 do something like this:
LoadModule php5_module "F:/wamp/bin/php/php5.3.0/php5apache2_2.dll"
AddType application/x-httpd-php .php


# configure the path to php.ini
PHPIniDir "f:/wamp/bin/php/php5.3.0/"

<IfModule dir_module>
   DirectoryIndex index.html index.php 
</IfModule>

#Alias /websvn/ "F:/Program Files/VisualSVN Server/htdocs/websvn-2.3.1/" 

<Location /websvn-2.3.1/>
   Options FollowSymLinks

    AuthName "Subversion Repositories"
    AuthType VisualSVN
    AuthzVisualSVNAccessFile "F:/Repositories/authz-windows"
    AuthnVisualSVNBasic on
    AuthnVisualSVNIntegrated off
    AuthnVisualSVNUPN Off
   Require valid-user


   SVNListParentPath on
   SVNParentPath "f:/Repositories/"
</Location>
0 голосов
/ 02 ноября 2008

Я автор упомянутой вами статьи. Информация, которую я опубликовал, предназначалась только для WebSVN, работающего на IIS. Насколько я понимаю, программное обеспечение должно "просто работать", когда вы используете PHP на Apache, хотя я никогда не настраивал его в этой среде. Вы пытались выполнить отладку "эха" (из-за отсутствия лучшего термина), чтобы увидеть, где именно происходит сбой аутентификации?

...