我正在使用Apache 2.2.22(win64)在Windows Server 2008 R2上运行GitWeb。我按照这里的说明操作:https://git.wiki.kernel.org/index.php/MSysGit:GitWeb 说明说我们应该使用msysgit版本的perl作为gitweb.cgi脚本中perl的第一行。
GitWeb有效,但速度非常慢,加载页面大约需要10秒钟。我注意到的是,即使我使用msysgit的Perl版本作为第一行编写“Hello World”脚本,Apache也很难执行。但是,如果更改为不同版本的Perl,例如cygwin的perl(C:/ cygwin / bin / perl),它又会很快。除了msysgit之外,我无法使用任何其他类型的perl来执行gitweb.cgi,因为当我这样做时,我会收到“找不到项目”错误。
答案 0 :(得分:3)
几个小时后,我找到了另一种解决方案。我们不会使用msysgit的git和perl版本,而是使用cygwin:
1)安装Cygwin,并选择以下cygwin软件包:git(必要时为perl)
2)在3个地方修改gitweb.cgi文件 gitweb.cgi的第一行应该说:
#!C:/cygwin/bin/perl
确保$ GIT变量设置正确,并在" cygwin"格式:
our $GIT = "C:/cygwin/bin/git";
projectroot目录必须在" cygwin"格式,而不是msysgit格式:
our $projectroot = "/cygdrive/c/temp/repos";
出于某种原因,cygwin的perl版本在apache下的执行速度比msysgit下的版本快得多。
答案 1 :(得分:0)
只需在httpd.conf中添加下一行
即可SetEnv LOGONSERVER \ machine