当前位置: 首页 > 知识库问答 >
问题:

Git和Apache的服务器配置拒绝了客户端

柯乐池
2023-03-14

我正在尝试在windows server 2008 R2上使用Apache 2.4服务器配置Git服务器。

我将它添加到httpd.conf文件中:

<Directory "C:/serveur_web">
Options +ExecCGI
Require all granted
</Directory>

<VirtualHost *:80>
SetEnv GIT_PROJECT_ROOT C:/serveur_web
SetEnv GIT_HTTP_EXPORT_ALL
SetEnv REMOTE_USER=$REDIRECT_REMOTE_USER
ScriptAliasMatch \
    "(?x)^/(.*/(HEAD | \
                    info/refs | \
                    objects/(info/[^/]+ | \
                             [0-9a-f]{2}/[0-9a-f]{38} | \
                             pack/pack-[0-9a-f]{40}\.(pack|idx)) | \
                    git-(upload|receive)-pack))$" \
                    "C:/Program Files (x86)/Git/libexec/git-core/git-http-backend.exe/$1"
</VirtualHost>

我在C:/serveur_web中创建了一个存储库。我键入以下命令,用远程机器克隆它:

git clone http://dladev1/parc_auto

我收到了以下错误:

C:\Users\assontia>git clone http://localhost/parc_auto
Cloning into 'parc_auto'...
fatal: unable to access 'http://localhost/parc_auto/': The requested URL returne
d error: 403

在我的阿帕奇错误中.log我可以看到这个:

[Thu Jun 26 02:44:50.404296 2014] [authz_core:error] [pid 2852:tid 816] [client 10.52.66.78:60785] AH01630: client denied by server configuration: C:/Program Files (x86)/Git/libexec/git-core/git-http-backend.exe

我想知道这是不是因为我没有匿名访问git服务器的权限?

我需要自动创建用户来使用git服务器吗?

这个问题不能帮助我解决我的问题:问题

共有1个答案

傅振濂
2023-03-14

我刚刚花了两个小时才发现,您需要授权执行CGI脚本的目录需要是CGI所在的目录,而不是您拥有GIT数据的目录。

所以这是错误的,因为该目录是您放置 GIT 数据的位置:

<Directory "C:/serveur_web">
    Options +ExecCGI
    Require all granted
</Directory>

我们可以在您的设置中看到服务器在这里:

"C:/Program Files (x86)/Git/libexec/git-core/git-http-backend.exe/$1"

这意味着需要CGI授权的目录是这样的:

<Directory "C:/Program Files (x86)/Git/libexec/git-core*">
    Options +ExecCGI
    Require all granted
</Directory>

您需要授权所有可执行文件,因为它使用了几个。我想您可以确定这些是什么,并且只允许确切需要的内容。但是当我试图包含可执行文件的确切名称时,它仍然给了我403。

 类似资料:
  • 我正在得到 [2012年4月24日星期二 12:12:55][错误][客户端 127.0.0.1] 客户端被服务器配置拒绝:/labs/Projects/Nebula/bin/ 我的目录结构如下(我使用的是Symfony 2,其他web框架的结构应该类似) 我有这样的vhosts设置: 我想知道出了什么问题,我该如何解决它?

  • 当我试图通过浏览器访问localhost时,我遇到了这个错误。 403禁止 我用的是LTS Ubuntu 14.04 以下是我的配置文件: etc/apache2.conf apache日志 我在论坛上遵循的配置出错了 etc/apache2/启用站点/prestashop.conf 我已经添加到apache,我更新了服务,总是同样的错误,我想知道为什么它不工作,也许我想chmod这个网站可以在本

  • 当我试图通过浏览器访问localhost时会出现这个错误。 我使用以下方法检查了网站文件夹权限: 下面是我的配置文件: null

  • 在尝试使用Apache mod\u wsgi运行Flask时,我已经尝试了很多事情,但都非常沮丧。 基本上,我已经完成了以下教程: http://flask.pocoo.org/docs/deploying/mod_wsgi/#installing-mod-wsgihttp://www.lonesomedev.com/?p=169 但在浏览器上,我得到了以下错误: 访问禁止! 您无权访问请求的对象

  • 当我从Apache2的错误日志中按照教程的Postfix admin部分中的指南并试图导航到网站< code > https://mail admin . example . com/setup . PHP (也只是用example.com替换了我的网站名称)时,我得到了这个有名无实的错误消息,因为我得到了一个403禁止。 以下是我在< code > sudo nano/etc/Apache 2/

  • 我见过很多这样的问题,其中大多数最终都会将语法更改为最新的Apache版本,或者搞乱.htaccess。但我的情况并非如此,因为我使用了全新的F23安装,而且从未使用过更高级的Apache版本。我正在尝试建立一个简单的虚拟主机,它绑定到我的一个IP。下面是我在/etc/httpd/conf.d/internal.conf中输入的内容 当我尝试: 从该网络中的其他主机,出现第一个 403 页面并重定