第 6 章 服务配置

目录

1. 概述
2. 选择一个服务器配置
2.1. svnserve 服务器
2.2. 穿越 SSH 隧道的 svnserve 服务器
2.3. Apache 的 HTTP 服务器
2.4. 推荐
3. svnserve - 定制的服务器
3.1. 调用服务器
3.1.1. svnserve 与守护进程
3.1.2. 通过 inetd 调用 svnserve
3.1.3. 通过隧道调用 svnserve
3.1.4. svnserve as a Windows service
3.1.5. svnserve as a launchd job
3.2. 内置的认证和授权
3.2.1. 创建一个用户文件和认证域
3.2.2. 设置访问控制
3.3. 让 svnserve 使用 SASL
3.3.1. 使用 SASL 认证
3.3.2. SASL 加密
3.4. 穿越 SSH 隧道
3.5. SSH Configuration Tricks
3.5.1. 初始设置
3.5.2. 控制调用的命令
4. httpd - Apache 的 HTTP 服务器
4.1. 先决条件
4.2. 基本的 Apache 配置
4.3. 认证选项
4.3.1. Basic authentication
4.3.2. Digest authentication
4.4. 授权选项
4.4.1. 整体访问控制
4.4.2. 每目录访问控制
4.4.3. 禁用基于路径的检查
4.5. Protecting network traffic with SSL
4.5.1. Subversion server SSL certificate configuration
4.5.2. Subversion client SSL certificate management
4.6. 额外的糖果
4.6.1. 版本库浏览
4.6.2. Apache 日志
4.6.3. 通过代理写
4.6.4. 其它的 Apache 特性
5. 基于路径的授权
6. High-level Logging
7. 支持多种版本库访问方法

A Subversion repository can be accessed simultaneously by clients running on the same machine on which the repository resides using URLs carrying the file:// scheme. But the typical Subversion setup involves a single server machine being accessed from clients on computers all over the office—or, perhaps, all over the world.

This chapter describes how to get your Subversion repository exposed outside its host machine for use by remote clients. We will cover Subversion's currently available server mechanisms, discussing the configuration and use of each. After reading this chapter, you should be able to decide which networking setup is right for your needs, as well as understand how to enable such a setup on your host computer.