* push problem with anonymous access
@ 2011-07-01 22:32 Michele Marcionelli
2011-07-02 15:19 ` Tay Ray Chuan
0 siblings, 1 reply; 4+ messages in thread
From: Michele Marcionelli @ 2011-07-01 22:32 UTC (permalink / raw)
To: git
Dear all
I configured apache as described on the man page:
SetEnv GIT_PROJECT_ROOT /var/www/vhosts/git/root
SetEnv GIT_HTTP_EXPORT_ALL
ScriptAlias /git/ /scratch/local/app/git/current/libexec/git-core/git-http-backend/
And then the following 2 repositories (also as described in the page):
# (1) authentication for both reads and writes
<LocationMatch /git/math/private_test.git>
AuthType Basic
AuthName "Git Access"
Require user admin
AuthUserFile /var/www/vhosts/git/htpasswd
</LocationMatch>
# (2) anonymous read access but authenticated write access
<LocationMatch "/git/math/public_test.git/git-receive-pack$">
AuthType Basic
AuthName "Git Access"
Require user admin
AuthUserFile /var/www/vhosts/git/htpasswd
</LocationMatch>
Now: with the repository (1) I can do everything, clone & push. With the repository (2) I can only clone and when I try to push as follow:
export GIT_SSL_NO_VERIFY=true
git clone https://git.math.ethz.ch/git/math/public_test.git
cd public_test
echo foo >> TODO
git commit TODO -m bar
git push
I get followin errors to "stderr":
error: Cannot access URL https://git.math.ethz.ch/git/math/public_test.git/, return code 22
fatal: git-http-push failed
An to the apache access_log & error_log files:
==> /var/log/httpd/git-ssl.access_log <==
85.1.201.213 - - [02/Jul/2011:00:13:32 +0200] "GET /git/math/public_test.git/info/refs?service=git-receive-pack HTTP/1.1" 403 - "-" "git/1.7.5.4"
85.1.201.213 - - [02/Jul/2011:00:13:33 +0200] "GET /git/math/public_test.git/info/refs HTTP/1.1" 200 59 "-" "git/1.7.5.4"
85.1.201.213 - - [02/Jul/2011:00:13:33 +0200] "GET /git/math/public_test.git/HEAD HTTP/1.1" 200 23 "-" "git/1.7.5.4"
85.1.201.213 - - [02/Jul/2011:00:13:33 +0200] "PROPFIND /git/math/public_test.git/ HTTP/1.1" 404 - "-" "git/1.7.5.4"
==> /var/log/httpd/git-ssl.error_log <==
[Sat Jul 02 00:13:33 2011] [error] [client 85.1.201.213] Request not supported: '/var/www/vhosts/git/root/math/public_test.git/'
Any Idea?
Thx, Michele
--
Michele Marcionelli · mm@ethz.ch · +41 44 632 6193
* Please consider the environment before printing
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: push problem with anonymous access
2011-07-01 22:32 Michele Marcionelli
@ 2011-07-02 15:19 ` Tay Ray Chuan
0 siblings, 0 replies; 4+ messages in thread
From: Tay Ray Chuan @ 2011-07-02 15:19 UTC (permalink / raw)
To: Michele Marcionelli; +Cc: git
On Sat, Jul 2, 2011 at 6:32 AM, Michele Marcionelli
<michele.marcionelli@math.ethz.ch> wrote:
> ==> /var/log/httpd/git-ssl.access_log <==
> 85.1.201.213 - - [02/Jul/2011:00:13:32 +0200] "GET /git/math/public_test.git/info/refs?service=git-receive-pack HTTP/1.1" 403 - "-" "git/1.7.5.4"
Try
$ git clone https://<user>:<pwd>@git.math.ethz.ch/git/math/public_test.git
or put it in ~/.netrc.
--
Cheers,
Ray Chuan
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: push problem with anonymous access
@ 2011-07-04 7:13 Michele Marcionelli
2011-07-04 10:02 ` Michele Marcionelli
0 siblings, 1 reply; 4+ messages in thread
From: Michele Marcionelli @ 2011-07-04 7:13 UTC (permalink / raw)
To: Tay Ray Chuan; +Cc: git
Hi Ray
I tried as you suggested (even if to clone I don't need a password):
$ git clone https://michele:******@git.math.ethz.ch/git/math/public_test.git
==>
Cloning into public_test...
remote: Counting objects: 15, done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 15 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (15/15), done.
And in the apache logs:
129.132.147.190 - - [04/Jul/2011:08:14:40 +0200] "GET /git/math/public_test.git/info/refs?service=git-upload-pack HTTP/1.1" 200 264 "-" "git/1.7.5.4"
129.132.147.190 - - [04/Jul/2011:08:14:40 +0200] "POST /git/math/public_test.git/git-upload-pack HTTP/1.1" 200 1688 "-" "git/1.7.5.4"
But the when I push (and here is my problem):
$ cd public_test
$ echo foo >> TODO
$ git commit TODO -m bar
$ git push
==>
error: Cannot access URL https://michele:******@git.math.ethz.ch/git/math/public_test.git/, return code 22
fatal: git-http-push failed
I get following in the apache logs:
==> /var/log/httpd/git-ssl.access_log <==
129.132.147.190 - - [04/Jul/2011:08:17:45 +0200] "GET /git/math/public_test.git/info/refs?service=git-receive-pack HTTP/1.1" 403 - "-" "git/1.7.5.4"
129.132.147.190 - - [04/Jul/2011:08:17:45 +0200] "GET /git/math/public_test.git/info/refs HTTP/1.1" 200 59 "-" "git/1.7.5.4"
==> /var/log/httpd/git-ssl.error_log <==
[Mon Jul 04 08:17:45 2011] [error] [client 129.132.147.190] Service not enabled: 'receive-pack'
==> /var/log/httpd/git-ssl.access_log <==
129.132.147.190 - - [04/Jul/2011:08:17:45 +0200] "GET /git/math/public_test.git/HEAD HTTP/1.1" 200 23 "-" "git/1.7.5.4"
129.132.147.190 - - [04/Jul/2011:08:17:46 +0200] "PROPFIND /git/math/public_test.git/ HTTP/1.1" 404 - "-" "git/1.7.5.4"
==> /var/log/httpd/git-ssl.error_log <==
[Mon Jul 04 08:17:46 2011] [error] [client 129.132.147.190] Request not supported: '/var/www/vhosts/git/root/math/public_test.git/'
The problem that I see is that in the configuration (see also the "man git-http-backend") you have this
<LocationMatch "^/git/.*/git-receive-pack$">
and "git push" do following request:
/git/whatever/info/refs?service=git-receive-pack
which is not matched by the "LocationMarch".
Thx, Michele
PS: I'm not using WebDAV, since it is not documented in the man page.
On Jul 2, 2011, at 17:19 , Tay Ray Chuan wrote:
> On Sat, Jul 2, 2011 at 6:32 AM, Michele Marcionelli
> <michele.marcionelli <at> math.ethz.ch> wrote:
>> ==> /var/log/httpd/git-ssl.access_log <==
>> 85.1.201.213 - - [02/Jul/2011:00:13:32 +0200] "GET
> /git/math/public_test.git/info/refs?service=git-receive-pack HTTP/1.1" 403 - "-" "git/1.7.5.4"
>
> Try
>
> $ git clone https://<user>:<pwd>@git.math.ethz.ch/git/math/public_test.git
>
> or put it in ~/.netrc.
>
> --
> Cheers,
> Ray Chuan
--
Michele Marcionelli · mm@ethz.ch · +41 44 632 6193
* Please consider the environment before printing
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: push problem with anonymous access
2011-07-04 7:13 push problem with anonymous access Michele Marcionelli
@ 2011-07-04 10:02 ` Michele Marcionelli
0 siblings, 0 replies; 4+ messages in thread
From: Michele Marcionelli @ 2011-07-04 10:02 UTC (permalink / raw)
To: git; +Cc: Tay Ray Chuan
I found out something: with these 2 lines in "public_test.git/config":
[http]
receivepack = true
Now I can push and the log files looks like this:
==> /var/log/httpd/git-ssl.access_log <==
129.132.147.190 - - [04/Jul/2011:11:26:57 +0200] "GET /git/math/public_test.git/info/refs?service=git-receive-pack HTTP/1.1" 200 153 "-" "git/1.7.5.4"
129.132.147.190 - - [04/Jul/2011:11:26:57 +0200] "POST /git/math/public_test.git/git-receive-pack HTTP/1.1" 406 - "-" "git/1.7.5.4"
129.132.147.190 - michele [04/Jul/2011:11:26:57 +0200] "POST /git/math/public_test.git/git-receive-pack HTTP/1.1" 200 52 "-" "git/1.7.5.4"
==> /var/log/httpd/git-ssl.error_log <==
[Mon Jul 04 11:26:57 2011] [error] [client 129.132.147.190] no acceptable variant: /var/www/error/HTTP_UNAUTHORIZED.html.var
So 2 questions:
1) it is ok to set "receivepack = true"? It's not dangerous?
2) I still get an error 406 (see second line)... is that normal?
3) shouldn't somebody include this information in some official FAQ or in the man page of git-http-backend?
Regards,
Michele
On Jul 4, 2011, at 9:13 , Michele Marcionelli wrote:
> Hi Ray
>
> I tried as you suggested (even if to clone I don't need a password):
>
> $ git clone https://michele:******@git.math.ethz.ch/git/math/public_test.git
> ==>
> Cloning into public_test...
> remote: Counting objects: 15, done.
> remote: Compressing objects: 100% (7/7), done.
> remote: Total 15 (delta 0), reused 0 (delta 0)
> Unpacking objects: 100% (15/15), done.
>
> And in the apache logs:
> 129.132.147.190 - - [04/Jul/2011:08:14:40 +0200] "GET /git/math/public_test.git/info/refs?service=git-upload-pack HTTP/1.1" 200 264 "-" "git/1.7.5.4"
> 129.132.147.190 - - [04/Jul/2011:08:14:40 +0200] "POST /git/math/public_test.git/git-upload-pack HTTP/1.1" 200 1688 "-" "git/1.7.5.4"
>
> But the when I push (and here is my problem):
> $ cd public_test
> $ echo foo >> TODO
> $ git commit TODO -m bar
> $ git push
> ==>
> error: Cannot access URL https://michele:******@git.math.ethz.ch/git/math/public_test.git/, return code 22
> fatal: git-http-push failed
>
> I get following in the apache logs:
>
> ==> /var/log/httpd/git-ssl.access_log <==
> 129.132.147.190 - - [04/Jul/2011:08:17:45 +0200] "GET /git/math/public_test.git/info/refs?service=git-receive-pack HTTP/1.1" 403 - "-" "git/1.7.5.4"
> 129.132.147.190 - - [04/Jul/2011:08:17:45 +0200] "GET /git/math/public_test.git/info/refs HTTP/1.1" 200 59 "-" "git/1.7.5.4"
> ==> /var/log/httpd/git-ssl.error_log <==
> [Mon Jul 04 08:17:45 2011] [error] [client 129.132.147.190] Service not enabled: 'receive-pack'
> ==> /var/log/httpd/git-ssl.access_log <==
> 129.132.147.190 - - [04/Jul/2011:08:17:45 +0200] "GET /git/math/public_test.git/HEAD HTTP/1.1" 200 23 "-" "git/1.7.5.4"
> 129.132.147.190 - - [04/Jul/2011:08:17:46 +0200] "PROPFIND /git/math/public_test.git/ HTTP/1.1" 404 - "-" "git/1.7.5.4"
> ==> /var/log/httpd/git-ssl.error_log <==
> [Mon Jul 04 08:17:46 2011] [error] [client 129.132.147.190] Request not supported: '/var/www/vhosts/git/root/math/public_test.git/'
>
>
> The problem that I see is that in the configuration (see also the "man git-http-backend") you have this
>
> <LocationMatch "^/git/.*/git-receive-pack$">
>
> and "git push" do following request:
>
> /git/whatever/info/refs?service=git-receive-pack
>
> which is not matched by the "LocationMarch".
>
> Thx, Michele
>
> PS: I'm not using WebDAV, since it is not documented in the man page.
>
>
> On Jul 2, 2011, at 17:19 , Tay Ray Chuan wrote:
>
>> On Sat, Jul 2, 2011 at 6:32 AM, Michele Marcionelli
>> <michele.marcionelli <at> math.ethz.ch> wrote:
>>> ==> /var/log/httpd/git-ssl.access_log <==
>>> 85.1.201.213 - - [02/Jul/2011:00:13:32 +0200] "GET
>> /git/math/public_test.git/info/refs?service=git-receive-pack HTTP/1.1" 403 - "-" "git/1.7.5.4"
>>
>> Try
>>
>> $ git clone https://<user>:<pwd>@git.math.ethz.ch/git/math/public_test.git
>>
>> or put it in ~/.netrc.
>>
>> --
>> Cheers,
>> Ray Chuan
>
> --
> Michele Marcionelli · mm@ethz.ch · +41 44 632 6193
> * Please consider the environment before printing
>
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
Michele Marcionelli · mm@ethz.ch · +41 44 632 6193
* Please consider the environment before printing
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2011-07-04 10:08 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-07-04 7:13 push problem with anonymous access Michele Marcionelli
2011-07-04 10:02 ` Michele Marcionelli
-- strict thread matches above, loose matches on Subject: below --
2011-07-01 22:32 Michele Marcionelli
2011-07-02 15:19 ` Tay Ray Chuan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).