如何使用 lighttpd 托管化石存储库?

如何使用 lighttpd 托管化石存储库?

我有一个 Fossil 项目,想将它托管在我的服务器上。我使用 lighttpd 为其他一些项目提供 git 接口,因此使用 apache 或 nginx 是不可能的。

我遵循了相当简单的指示www-data并授予cgi 脚本和存储库中的读、写和执行权限。

我的 lighttpd.conf 的相关部分如下所示:

$HTTP["host"] =~ "^fossil-project.my-server.com$" {
server.groupname           = "www-data"
server.username            = "www-data"
cgi.assign = (
   ".cgi" => "/usr/bin/fossil"
)
alias.url += (
  "/" => "/usr/lib/cgi-bin/fossilweb.cgi"
)
}

在 Web 浏览器中访问我的项目可以确认 cgi 脚本运行良好,因为它从 重定向//index,这是化石 Web 界面的默认登录页面,但是,它没有显示项目页面(也可以正常工作,通过运行 可以确认fossil ui fossil-project.fossil),而是显示一个404

我猜我在主机配置中遗漏了一些东西,它lighttpd.conf告诉它/该子域下的所有 URL 都应该由 lighttpd 处理,fossil而不是由 lighttpd 处理,但我不知道该怎么做

有什么指点吗?

答案1

我认为你有两种选择:

  1. 使用fossil服务器,然后通过mod_proxy将lighttpd的请求代理到fossil

  2. 使用fossil内置的CGIhttp://www.fossil-scm.org/index.html/wiki?name=Cookbook#CGI

您可能会从 mercurial 和/或 trac 的设置方式中获得一些提示。

相关内容