Apache服务器缺省并不支持SSL,但是你可以从其他地方下载安装。
1. 首先,你需要一些文件来开启SSL,你可以在http://hunter.campbus.com/找到这些包,只需要解压缩这些文件,然后将mod_ssl.so拷贝到Apache的modules目录,将文件openssl.exe拷贝到bin目录,将文件conf/ssl.conf拷贝到Apache的conf目录。
2. 使用文本编辑器打开Apache的conf目录的ssl.conf.
3. 注释掉(使用#)下面几行:
DocumentRoot "c:/apache/htdocs"ServerName www.example.com:443ServerAdmin you@example.comErrorLog logs/error_logTransferLog logs/access_log
4. 此行
SSLCertificateFile conf/ssl.crt/server.crt改为SSLCertificateFile conf/ssl/my-server.cert此行SSLCertificateKeyFile conf/ssl.key/server.key改为SSLCertificateKeyFile conf/ssl/my-server.key此行SSLMutex file:logs/ssl_mutex改为SSLMutex default
5. 删除下面两行:
IfDefine SSL
6. 打开Apache配置文件(httpd.conf),并且去掉此行的注释
7. Openssl需要一个配置文件,你可以从http://tud.at/programm/openssl.cnf下载一个正在使用的,请注意:*.cnf类型的文件尽管是普通的文本文件,Windows对这种文件会特别处理!
8. 然后你需要创建一个SSL证书,为此打开一个命令行窗口,进入apache目录(例如C:program filesapache groupapache2),然后输入下面的命令:
你会被讯问密语,请不要使用简单的单词,而是使用整段话,例如一段诗,越长越好。你也需要输入server的URL,其他所有问题都是可选的,但是我们建议你最好输入这些信息。
通常会自动产生privkey.pem文件,但是如果没有,请输入下面的命令生成它:
然后输入这个命令
并且输入(在同一行)
这样会创建一个在4000天里过期的证书,最后输入:
inopenssl x509 -in my-server.cert -out my-server.der.crt -outform DER
这些命令在Apache目录(my-server.der.crt、my-server.csr、my-server.key、。rnd、 privkey.pem、my-server.cert)里创建了一些文件,拷贝这些文件到目录conf/ssl(例如C:program filesapache groupapache2confssl)-如果这个目录不存在,你需要首先创建一个。
9. 重启apache服务
10. 将你的浏览器指向https://servername/svn/project
11 关闭不安全连接方法
你设置了SSL让你的版本库更安全,你一定希望关闭普通的非ssl访问,为此,你需要在Subversion的 Location 增加指示:SSLRequireSSL.一个 Location 实例就像这个样子:
SVNParentPath D:SVN
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile passwd
#AuthzSVNAccessFile svnaccessfile
到此为止在版本控制工具Subversion在Windows Server 2003下的安装基本介绍完了,如果您希望获得更好的安全性能可以考虑使用使用Windows域认证。