感谢包向信提供的这个方法。我把实践过程做了一个整理记录如下。
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
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>
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>
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>
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
最好的参考资料:
Apache
下载地址:
本文转sinojelly51CTO博客,原文链接:http://blog.51cto.com/sinojelly/131865,如需转载请自行联系原作者