CGIT not working with PATH_INFO under Ubuntu 10.04 / Lighttpd
hjemli at gmail.com
Mon Mar 7 08:52:15 CET 2011
[added cc:cgit list]
On Mon, Mar 7, 2011 at 02:09, Angus Turnbull <angus at twinhelix.com> wrote:
> I've compiled CGIT v0.8.3.5 against Git 1.7.3 under Ubuntu 10.04.2 LTS
> on a Xen HVM VPS with the default compiler g++ 4.4.3-4ubuntu5,
> zlib1g-dev 220.127.116.11.dfsg-15ubuntu1, libssl-dev 0.9.8k-7ubuntu8 and served
> with lighttpd 1.4.26.
> The web interface will load and list respositories, but as soon as you
> click one, it displays the root title header and hangs as soon as it
> gets to "Name" and "Description". This is with a URL
> like /cgit/reponame/ -- I've got it on http://git.twinhelix.com if you
> want to see it. Manually keying in /cgit?r=reponame results in the
> expected repo contents list.
This is very strange. On you site, /cgit?r=fsmenu works as expected,
while /cgit?url=fsmenu does not, and instead shows a path-filtered
repolist (url=fsmenu is how $PATH_INFO is handled internally).
When specifying r=fsmenu, "fsmenu" is passed as argument to
cgit_get_repoinfo() , and when specifying url=fsmenu, "fsmenu" is
passed as argument to cgit_parse_url() , which in turn invokes
cgit_get_repoinfo()  on its argument. This should Just Work.
If you could add a fprintf() to cgit_get_repoinfo() , like this
fprintf(stderr, "cgit_get_repoinfo(%s)\n", url);
and report back what you get in your webserver logfiles when accessing
That might help us pin down the cause of the problem.
More information about the CGit