我已经在 Windows 上使用 apache 配置了 git 服务器。下面是我在 httpd.conf 中添加的行
SetEnv GIT_PROJECT_ROOT D:/GitWithTorque/Repositories
SetEnv GIT_HTTP_EXPORT_ALL
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))$" \
"D:/GitWithTorque/ProgramFiles/Git/libexec/git-core/git-http-backend.exe/$1"
如果我像下面这样写
<Directory />
Allow from all
AuthType Basic
AuthName "Repository Authorization"
AuthUserFile D:/GitWithTorque/Authorization/.htpasswd
Require valid-user
</Directory>
我可以使用智能 git 克隆存储库。
但是我只想通过指定目录路径对 git 存储库执行此身份验证如果我像下面这样写,那么如果我尝试使用智能 git 进行克隆,它会显示路径不存在。
<Directory D:/GitWithTorque/Repositories/>
Allow from all
AuthType Basic
AuthName "Repository Authorization"
AuthUserFile D:/GitWithTorque/Authorization/.htpasswd
Require valid-user
</Directory>
以上不起作用。可能是什么问题。
我想为特定文件夹指定身份验证。这样,如果我浏览从同一服务器连接的 html 页面(位于 git 存储库之外),则不应提示输入用户名和密码。谢谢
答案1
尝试将路径括在双引号中,例如,
<Directory "D:/GitWithTorque/Repositories/">
希望引号的魔力能对你起作用:)