选择发行版 :

配置 web 服务器是最后一项工作。以下指南针对 Apachelighttpd 给出。 其它服务器请参见 用户手册

警告 !
配置文件和目录是按照 Fedora 给出的,别的发行版可能有所不同。 DebianUbuntu 请参见 这里

在所有情形您都应当仔细检查生成的配置文件。 进一步,在多源码树的情况下,注意移除重复的端口和虚拟根目录的定义。 后者经常出现在互相不重叠的情况下(此处翻译的不太清楚,此处意义不太准确,请参见原文)。

Apache web 服务器

您需要将 前述配置步骤 创建的 custom.d/apache-lxrserver.conf 配置文件复制到 /etc/httpd/conf.d/ 目录下。 这个配置文件会在服务器初始化时被自动读取并且与 httpd.conf 合并。 服务器软件更新时,您再次将其复制到 /etc/httpd/conf.d/ 目录就行。

/etc/httpd/conf.d/ 目录的访问需要 root 权限。

将文件复制到 Apache 配置目录下:

$ cp custom.d/apache-lxrserver.conf /etc/httpd/conf.d 配置文件在 Apache 1.x 版本 和 2.x 版本都能正常工作。

“目录配置文件” .htacess 已经在前述配置步骤创建并且已经存储到 LXR 根目录下。您可以修改它以使能目录文件列出权限或者其它您需要的权限。

  • Apache version 1.x

    mod_perl 在 Apache 1.x 只能访问系统的 Perl 库,因此您必须将 LXR 的私有库拷贝到如下位置:

    $ cp -r lib/LXR/* /usr/lib/perl5/site_perl/ $ cp lib/Local.pm /usr/lib/perl5/site_perl/

lighttpd web 服务器

前述 配置步骤 创建了文件 custom.d/lighttpd-lxrserver.conf
2.1 或更高版本 : 2.0 版本 : 1.1 或更低版本 :
  • LXR 2.1 或更高版本

    检查确认主配置文件 /etc/lighttpd/lighttpd.conf 允许虚拟主机操作。 文件的结尾的标记必须出于非注释状态:

    include_shell "cat /etc/lighttpd/vhosts.d/*.conf"

    检查确认 /etc/lighttpd/modules.conf 文件使能了 "plain old CGI" 模块。 具体而言就是以下 CGI modules 段的如下行没有被注释掉:

    include "conf.d/cgi.conf"

    消除重复内容之外,您不应当手动编辑配置文件 custom.d/lighttpd-lxrserver.conf。 将其拷贝到最终位置:

    $ cp custom.d/lighttpd-lxrserver.conf /etc/lighttpd/vhosts.d/ 该文件会在服务器初始化时被自动读入,合并至 lighttpd.conf。 当服务器软件更新时,你需要做的仅仅是将该文件再次存放到 /etc/lighttpd/vhosts.d/ 目录下。

    访问 /etc/lighttpd/vhosts.d/ 目录需要 root 权限。

    当你需要启动(重启)lighttpd 时,以 root 身份运行以下命令:

    $ systemctl restart lighttpd.service

检查配置文件:

$ lighttpd -t -f custom.d/lighttpd-lxrserver.conf

启动 lighttpd 服务器。

  • 单用户服务 $ lighttpd -D -f custom.d/lighttpd-lxrserver.conf

    用 ctrl-C 以停止 lighttpd。

  • 系统服务
    • systemd 服务使能情况下

      首先,将配置文件拷贝到指定位置:

      $ cp custom.d/lighttpd-lxrserver.conf /etc/lighttpd/conf.d

      启动服务器:

      $ systemctl start lighttpd.service

      以下命令用于停止 lighttpd 服务器:

      $ systemctl stop lighttpd.service
    • 没有 systemd (on a single line or with continuation indicators) $ LIGHTTPD_CONF_PATH=\ "/path/to/lxr/custom.d/lighttpd-lxrserver.conf" \ ./scripts/lighttpd-init start

      以下命令用于停止 lighttpd 服务器:

      $ ./scripts/lighttpd-init stop
如果您已经在运行一个 lighttpd 服务器,将 LXR 配置与已有配置合并,此处不再赘述。

关于 SELinux

如果您稍后遇到 SELinux 问题 (和 LXR 根目录 相关的警告):

脚本和它们所在的目录必须被特别标记以能够在“normal”上下文中执行。 当其在 /var/www/cgi-bin/ 目录下时,这是例行公事。 为了消除警告,最靠谱的方法是用如下命令克隆 /var/www/cgi-bin/ 上下文:(此处翻译可能不准确,请参见原文,译者注)

$ chcon --reference /var/www/cgi-bin -R LXR_root_directory/

最终检查

打开浏览器访问 http://localhost/lxr/source。 您应当看到您的源码树的默认版本的目录内容。