Ваш логин:
Ваш пароль:
 
 
Вы смотрите: Блог разработчика » Заметки сисадмина » Установка и настройка Apache + SVN
18-10-2010, 22:13, прочитали: 1924 раз, раздел: Заметки сисадмина, FreeBSD
Установка

Для начала соберем Apache с поддержкой Berkley DB, так как я предпочитаю именно этот способ хранения данных.

cd /usr/ports/www/apache22/
make install WITH_BERKELEYDB=db42


Если Apache уже установлен, то

make reinstall WITH_BERKELEYDB=db42


если и это не поможет, то

make deinstall && make clean


можно еще зачистить

rm -rf /usr/ports/distfiles/*


Далее, устанавливаем Subversion

cd /usr/ports/devel/subversion
make config


выбираем MOD_DAV_SVN и BDB

make install


Проверьте, есть ли записи в /usr/local/etc/apache22/httpd.conf

LoadModule dav_svn_module     libexec/apache22/mod_dav_svn.so
LoadModule authz_svn_module   libexec/apache22/mod_authz_svn.so


Где «libexec/apache22/» — ваш путь до модулей апача.

Перезапускаем apache

apachectl restart


Создаем репозиторий

Создаём каталог для репозитория

mkdir -p /home/svn/repos


Каталог для вашего проекта

svnadmin create /home/svn/repos/_project_/


_project_ — заменить на имя вашего проекта (каталога).

Импортируем проект в репозиторий

cd /home/_project_/
svn import ./ file:///home/svn/repos/_project_ --message 'Initial repository layout'


Установим права веб-сервера

chown -R www:www /home/svn/


Добавить в /usr/local/etc/apache22/httpd.conf

<location /svn>
   DAV svn

   # разрешает выдавать перечень всех доступных хранилищ в папке SVNParentPath
   SVNListParentPath on
   SVNParentPath /home/svn/repos
   SVNPathAuthz off

   # включения базовой аутентификации, т.е. имя_пользователя/пароль
   AuthType Basic
   AuthName "Subversion repository"
   AuthUserFile /home/svn/svn-auth-file

   # предписывает, что только пользователям, предоставившим правильные имя_пользователя/пароль,
   # будет разрешён доступ к URL
   Require valid-user
</location>


Теперь, создадим пользователей для доступа к вашему проекту

htpasswd -cmb /home/svn/svn-auth-file _user_ _password_


и добавляем пользователей, так как ключ «-c» указывает на создание файла

htpasswd -mb /home/svn/svn-auth-file _user_ _password_


Где _user_ и _password_ — имя и пароль соответственно.

Ну вот и все, удачного checkout'a!

svn checkout http://_domain_/svn/_project_


Возможные ошибки

1. Не можете сделать коммит, выдаёт ошибку доступа? Тогда задайте права 777 для всех папок внутри папки репозитория.

2. Если Вы используете nginx в связке с apache, то обязательно удалите секцию кеширования файлов по типу .js, .png, .jpg и т.д. для поддомена где расположен svn.

 (голосов: 1)
Добавил: nickon,
Эта новость по темам:
Это может вас заинтересовать:
Комментариев оставленно: 0
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.
© 2008-2010 nick-on.name
Любая перепечатка материалов без разрешения редакции запрещена!

Обратная связь Помощь ремонт компьютеров на молодежной бесплатная доска объявлений. . ремонт компьютеров волгоградский проспект, квартиры и офисы в аренду.