2

我已经为这个问题苦苦挣扎了几天,但似乎无法解决它,我想我快到了....但是...不完全:(

这就是我所在的地方。

我在一个无头的 debian 服务器上,运行 virtualmin / webmin 来创建我的域 / 用户等。我不知道这是否会搞砸,但我很高兴手动修改配置文件(通过 webmin 或通过 ssh /vim)。

我正在尝试通过 apache 将化石作为 cgi 服务运行。

它是一个名为 homeserver.net 的内部站点,我可以很好地访问默认页面,并根据需要添加和创建链接等。

请注意,我的问题的解决方案在问题的末尾。

所以文件位于磁盘上,与我的 apache 文档根目录一致

/home/homeserver/www

我想运行化石以同时拥有内部站点,然后将我练习的开发工作放在单独的文件中。所以我为这些存储库创建了一个新目录。

/home/homeserver/repos/web/site.fossil
/home/homeserver/repos/dev/ [no repository yet!]

阅读化石页面上的说明,我插入了一个名为“fos_repo.cgi”的简短 cgi 文件,其内容为。

#!/usr/bin/fossil
directory: /home/homeserver/repos
notfound: http://www.homeserver.net/site404.htm

当我打开链接到

www.homeserver.net/cgi-bin/fos_repo.cgi 

我被重定向到我写的 404 页面。所以脚本显然正在阅读和工作。

通过阅读化石页面,我了解到我应该能够使用以下链接打开/访问 repo。

www.homeserver.net/cgi-bin/repos/web/site

我不确定为什么这不起作用...

到目前为止,我已经尝试了以下方法。

我从 cli 打开了存储库,并让服务器在后台运行

化石服务器 site.fossil &

我虽然也许文件应该在主 repo 目录中,而不是在子目录中,所以我移动了它......它现在住在

/home/homeserver/repos/site.fossil

我尝试在 apache 中为文件创建别名

Alias /home/homeserver/repos/web/site.fossil /home/homeserver/www/repos

当我浏览到

 www.homeserver.net/repos/site

我什么也没得到,但要去

www.homeserver.net/repos/site.fossil

将尝试下载文件(这是一个二进制文件)

所以我想我到了某个地方,但我不确定我错过了什么。

我以前使用过化石,但我将它作为本地服务器运行,并在需要时启动它。我正在这样运行它,以便最终将站点推送到实时 VPS(甚至可能在 VPS 上完成托管化石站点)。

ps 我以前使用的时候真的很喜欢fossil,并且喜欢整个集成的wiki和错误跟踪器,而且我可以简单地将文件复制到我的外部驱动器进行备份。个人真的不想换成别的东西,但如果我不得不....

提前致谢。

大卫

编辑:尝试其他选项。

所以我想我会尝试化石页面上显示的单一存储库方法,因此相应地调整了我的 cgi 脚本。

现在,当我导航到: www.homeserver.net/cgi-bin/fos_repo.cgi 我收到以下消息

SQLITE_CANTOPEN: cannot open file at line 30276 of [f5b5a13f73]
SQLITE_CANTOPEN: os_unix.c:30276: (21) open(/home/homeserver/repos)

但是,如果我 ssh 到服务器并手动启动它

fossil server site.fossil

我可以通过 www.homeserver.net:8081 访问服务器

所以我要么在 apache 中使用 SQLite 有问题,要么有其他问题。请帮忙

解决方案

因此,为了简单起见,我决定为每个 repo 使用一个 cgi 文件。

我最初的目录结构如下:

/home/homeserver/www
/home/homeserver/www/repos
/home/homeserver/www/repos/web # for web site development
/home/homeserver/www/repos/dev # for other development

我认为我的部分问题是我希望拥有目录: pont to my repos / location 化石会找到site.fossil文件(位于repos/web)和dev.fossil文件(位于repos/deb) .

显然这没有奏效。
我希望它看起来也像这样的原因是为了分离我系统上的信息。

出于某种原因,我决定将化石指向repos/会给我一个漂亮的化石风格首页并自动链接到我的存储库。但是在使用目录后:版本并收到以下错误消息

Unable to find or open the project repository

我意识到我仍然需要将我的首页写入存储库,而且我的期望有点过高。

所以我决定使用一个指向我需要制作的每个 repo 的 cgi 文件运行。

4

1 回答 1

3

代替

www.homeserver.net/cgi-bin/repos/web/site

尝试

www.homeserver.net/cgi-bin/repos.cgi/index

再次阅读您的(很长)问题,我建议尝试

www.homeserver.net/cgi-bin/fos_repos.cgi/index
于 2015-03-06T14:35:42.090 回答