我最近的任务是在Linux上托管一个git服务器。我对Linux世界很陌生,所以只是为了达到今天的目标而努力奋斗。我正处于创建裸存储库的位置,可以使用GitWeb(在Apache上托管)查看它。
由于我可以使用GitWeb浏览它,我认为我的apache服务器配置和git是正确的,但我仍然无法在远程计算机上克隆存储库。根据我配置apache的方式,我在尝试克隆时遇到403 Forbidden错误或404错误。
我不确定我的git存储库是否未正确配置,我的apache配置是否错误,或文件夹安全性是否无法访问。这可能是多件事。
我已经删除了GitWeb,以便我可以使用最简单的git和apache配置。我确信我的问题有很多不同的原因,所以我更多地要求一些可能是罪魁祸首的常见错误配置。
以下是我的apache配置的一些部分。我的存储库位于/ opt / git
<VirtualHost *:80>
ServerName gitserver
DocumentRoot /opt/git
<Directory /opt/git>
Options ExecCGI +FollowSymLinks +SymLinksIfOwnerMatch
AllowOverride All
order allow,deny
Allow from all
</Directory>
ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/
</VirtualHost>
<Directory "/opt/git">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
正如我所说,我能够(使用不同的配置)浏览到我的GitWeb页面,因此apache肯定在运行,并且在某些时候VirtualHost配置正确,但是肯定是错误的。
谢谢!
答案 0 :(得分:0)
看起来它不是apache的问题,这是git的一个问题。我需要运行命令
git update-server-info
我感到困惑,因为This Documentation使得命令会自动运行,因为我只是复制了示例挂钩。我想你必须在创建新存储库时运行命令吗?