感谢包向信提供的这个方法。我把实践过程做了一个整理记录如下。
1、安装apache_2.2.11-win32-x86-openssl-0.9.8i.msi.
(VisualSVN Server 1.6.3用的Apache 2.2.9版本,安装目录的readme.txt中有说明。)
2、把apache如下目录的内容复制到VisualSVN目录。具体方法参见下面两张图:
#Add by chenguodong for Directory
share
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
#LoadModule auth_digest_module modules/mod_auth_digest.so
#LoadModule authn_alias_module modules/mod_authn_alias.so
#LoadModule authn_anon_module modules/mod_authn_anon.so
#LoadModule authn_dbd_module modules/mod_authn_dbd.so
#LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authn_file_module modules/mod_authn_file.so
#LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
#LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
#LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
#LoadModule cache_module modules/mod_cache.so
#LoadModule cern_meta_module modules/mod_cern_meta.so
LoadModule cgi_module modules/mod_cgi.so
#LoadModule charset_lite_module modules/mod_charset_lite.so
#LoadModule dav_module modules/mod_dav.so
#LoadModule dav_fs_module modules/mod_dav_fs.so
#LoadModule dav_lock_module modules/mod_dav_lock.so
#LoadModule dbd_module modules/mod_dbd.so
#LoadModule deflate_module modules/mod_deflate.so
LoadModule dir_module modules/mod_dir.so
#LoadModule disk_cache_module modules/mod_disk_cache.so
#LoadModule dumpio_module modules/mod_dumpio.so
LoadModule env_module modules/mod_env.so
#LoadModule expires_module modules/mod_expires.so
#LoadModule ext_filter_module modules/mod_ext_filter.so
#LoadModule file_cache_module modules/mod_file_cache.so
#LoadModule filter_module modules/mod_filter.so
#LoadModule headers_module modules/mod_headers.so
#LoadModule ident_module modules/mod_ident.so
#LoadModule imagemap_module modules/mod_imagemap.so
LoadModule include_module modules/mod_include.so
#LoadModule info_module modules/mod_info.so
LoadModule isapi_module modules/mod_isapi.so
#LoadModule ldap_module modules/mod_ldap.so
#LoadModule logio_module modules/mod_logio.so
LoadModule log_config_module modules/mod_log_config.so
#LoadModule log_forensic_module modules/mod_log_forensic.so
#LoadModule mem_cache_module modules/mod_mem_cache.so
LoadModule mime_module modules/mod_mime.so
#LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule negotiation_module modules/mod_negotiation.so
#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
#LoadModule rewrite_module modules/mod_rewrite.so
LoadModule setenvif_module modules/mod_setenvif.so
#LoadModule speling_module modules/mod_speling.so
#LoadModule ssl_module modules/mod_ssl.so
#LoadModule status_module modules/mod_status.so
#LoadModule substitute_module modules/mod_substitute.so
#LoadModule unique_id_module modules/mod_unique_id.so
#LoadModule userdir_module modules/mod_userdir.so
#LoadModule usertrack_module modules/mod_usertrack.so
#LoadModule version_module modules/mod_version.so
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
#Add End by chenguodong
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
同样在该配置文件中,增加共享目录相关的配置:
#Add by chenguodong
Alias /Share/ "D:/Share/"
<Directory "D:/Share">
Options Indexes
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<Location /Share/>
Auth Name "Share authz"
AuthType Basic
AuthUserFile "D:/SVN/VisualServer/htpasswd"
require valid-user
</Location>
#Add End
<IfModule dir_module>
DirectoryIndex
index.html
</IfModule>
修改index.html显示共享目录:
<!DOCTYPE html
PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN'
'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
<html
xml:lang="en"
xmlns="http://www.w3.org/1999/xhtml">
<head>
<!--
<meta content="0;URL=svn/"
http-equiv="refresh"/>
-->
<title>VisualSVN
Server</title>
</head>
<body>
<h1>Welcome
to VisualSVN Server!</h1>
<p><a
href="/svn/">代码库</a></p>
<p><a
href="/trac/">项目跟踪</a></p>
<p><a
href="/Share/">资料共享</a></p>
<p><a
href="/cgi-bin/Apache22Passwd.cgi">修改密码</a></p>
</body>
</html>
重启VisualSVN服务器即可(修改配置均需要重启)。
特别注意:Vista系统盘文件修改后,有UAC,则不能生效,把该文件再复制出来,又还是原来的样子。需要关闭UAC。
配置过程中,难免遇到很多错误,VisualSVN错误查看方法:点击Start Event链接即可(参见下图)。
配置完成最后,FireFox浏览器每次打开都还是原来的index.html,看不到Share链接,并且会自动重定向到代码库。(清除历史和脱机网页也不能改变这种状态。)
但是在ie中没有问题,修改index.html之后,刷新网页就OK了。(如果不行就关闭IE再重新打开。)
附录:
Apache最好的参考资料:
http://httpd.apache.org/docs/2.2/
Apache下载地址:
http://httpd.apache.org/download.cgi
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处
、作者信息和本声明。否则将追究法律责任。http://sinojelly.blog.51cto.com/479153/131865
|