День добрый!Наша группа разработчиков попросила дать им на определенное кол-во времени два сервера контроля версий по: svn и mercurial.
С первым проблем не возникло, запустили под Win-сервером.
Вопрос по поводу Mercurial, мануалов целая куча а по факту получается что:
1. установил apache
2. установил mercurial
3. создал пользователя hg, создал ему директорию /var/hg/ и назначил ее владельцем.
4. создал в ней директорию rep назначил hg ее владельцем
5. скопировал скрипт hgwebdir.wcgi и создал файл hgweb.conf и дал права всем на запуск и чтение файлов.
6. в hgweb.conf прописал:
[web]
style = coal
allow_push = *
push_ssl = false[paths]
/ = /var/hg/rep/
7. создал директорию /etc/apache2/hg , создал там файл wcgi.conf
прописал в немWSGIScriptAlias / /var/hg/hgwebdir.wsgi
<Directory /var/hg/>
Order deny,allow
Allow from all
</Directory>8. в конфиге апача /etc/apache2/httpd.conf добавил пару строчек и получилось в итоге:
<VirtualHost 192.168.0.159:80>
ServerName vm-debian
DocumentRoot /var/hg/rep/
ErrorLog /var/log/apache2/vm-debian-error_log
CustomLog /var/log/apache2/vm-debian-access_log commonInclude /etc/apache2/hg/wcgi.conf
<Directory /var/hg/rep>
Options FollowSymlinks
DirectoryIndex index.html
AllowOverride None
Order allow,deny
Allow from all
</Directory><Directory /var/hg/rep>
Options ExecCGI FollowSymlinks
AddHandler wsgi-script .wsgi
AllowOverride None
Order allow,deny
Allow from all
</Directory></VirtualHost>
9.указал папку репозитория
sudo -u hg hg init /var/hg/repo
и создал там файл
echo "test" > test.test
после этого добавил его в репозиторий
sudo -u hg hg add
10. перезапустил сервер апача /etc/init.d/apache2 restart
По итогу я могу зайти по http на сервер, только вижу пустой каталог почемуто...в чем ошибка?
> По итогу я могу зайти по http на сервер, только вижу пустой
> каталог почемуто...в чем ошибка?а должно быть?
>> По итогу я могу зайти по http на сервер, только вижу пустой
>> каталог почемуто...в чем ошибка?
> а должно быть?а должны быть в каталоге файлы собственно... и мне в логе както странно выдаются сообщения об ошибке питона:
[Fri Jan 14 17:14:33 2011] [error] [client 192.168.0.144] mod_wsgi (pid=2195): Exception occurred processing WSGI script '/var/hg/hgwebdir.wsgi'.
[Fri Jan 14 17:14:33 2011] [error] [client 192.168.0.144] Traceback (most recent call last):
[Fri Jan 14 17:14:33 2011] [error] [client 192.168.0.144] File "/var/lib/python-support/python2.5/mercurial/hgweb/hgwebdir_mod.py", line 74, in __call__
[Fri Jan 14 17:14:33 2011] [error] [client 192.168.0.144] self.run_wsgi(req)
[Fri Jan 14 17:14:33 2011] [error] [client 192.168.0.144] File "/var/lib/python-support/python2.5/mercurial/hgweb/hgwebdir_mod.py", line 121, in run_wsgi
[Fri Jan 14 17:14:33 2011] [error] [client 192.168.0.144] hgweb(repo).run_wsgi(req)
[Fri Jan 14 17:14:33 2011] [error] [client 192.168.0.144] File "/var/lib/python-support/python2.5/mercurial/hgweb/hgweb_mod.py", line 252, in run_wsgi
[Fri Jan 14 17:14:33 2011] [error] [client 192.168.0.144] content = getattr(webcommands, cmd)(self, req, tmpl)
[Fri Jan 14 17:14:33 2011] [error] [client 192.168.0.144] File "/var/lib/python-support/python2.5/mercurial/hgweb/webcommands.py", line 65, in file
[Fri Jan 14 17:14:33 2011] [error] [client 192.168.0.144] raise inst
[Fri Jan 14 17:14:33 2011] [error] [client 192.168.0.144] UnboundLocalError: local variable 'inst' referenced before assignment
> 1. установил apacheверсия?
> 2. установил mercurial
версия?
>> 1. установил apache
> версия?апач 2.2.9-10
>> 2. установил mercurial
> версия?mercurial 1.0.1-5.1
все ставил с репозиториев.