我正在使用两台服务器,一台用于测试,另一台用于生产。我正在配置gitolite来使用http协议(ssh协议也在工作)。我遵循了本页的说明,http://gitolite.com/gitolite/ssh-and-http.html
在我的测试服务器中,一切都工作得很完美,我可以用git clone http://user:password@testing.server/gitolite/repo.git克隆回购。然后,我将测试服务器上的所有内容复制到我的生产服务器上,所以所有的配置(使gitolite与http一起工作)都是完全相同的。但是当我运行git clone http://user:password@productive.server/gitolite/repo.git时,我得到了fatal: unable to access http://user:password@productive.server/gitolite/repo.git: The requested URL returned error: 500
我检查了日志,没有生成suexec日志,只有error_log,它显示了
清华4月30日11:19:32 2015 client xx.xx.xx.xx许可被拒绝:'/usr/sbin/suexec‘的执行失败 清华4月30日11:19:32 2015客户端xx.xx脚本头的过早结束:gitolite suexec-rapper.sh
根据这一点,不会生成suexec_log,因为suexec从未运行过。第二行错误是出于同样的原因而产生的。所以这里的问题是第一个错误,但我不知道权限缺少什么。我比较了两个服务器之间的所有文件和权限,它们是相等的。
我已经搜索过了,但是没有一个解决方案对我有效。顺便说一句,SElinux在两台服务器上都是禁用的。
有人能帮我吗?,谢谢
编辑1:添加请求的信息
用户/珍珠岩组:存储库/存储库
包含珍珠岩的文件夹-suexec-Wrapper.sh: /var/www/bin
对bin文件夹的权限: 0755
bin文件夹的所有者/组:存储库/存储库
对珍珠岩的权限-suexec-Wrapper.sh: 0700
所有者/组:存储库/存储库
珍珠岩-suexec-wrapper.sh含量
#!/bin/bash
#
# Suexec wrapper for gitolite-shell
#
export GIT_PROJECT_ROOT="/home/repository/repositories"
export GITOLITE_HTTP_HOME="/home/repository"
exec ${GITOLITE_HTTP_HOME}/gitolite/src/gitolite-shell发布于 2016-02-23 12:38:15
正如我在上次评论中所说的,这是该机器的内部网络问题。
现在,我已经在另一台机器上安装和配置了git/gitolite管道ssh和http,一切都很完美,遵循gitolite网站的说明。我只有一个小问题,我通过将SElinux的配置从强制的更改为允许的模式(从命令行执行setenforce 0 )来解决这个问题。
https://stackoverflow.com/questions/29974988
复制相似问题