天天看点

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

        VisualSVN Server是非常方便好用的SVN服务器端软件,但有个问题,你在服务器端创建了用户名密码后,用户无法自己修改密码,据说VisualSVN的客户端可以修改用户密码,但客户端是收费软件。使用VisualSVN就是因为它是免费的,现在修改密码要收费,这我就不开心了。既然我是个技术男,我就要用我多年的技术,解决我的不开心。

       本文不仅包含了如何给VisualSVN扩展:在线修改密码功能。在文章最后一部分,还包括了出错,如何排除错误,分析错误,解析错误的详细步骤,希望可以帮到有需要的朋友。

一、修改密码原理

       要实现客户端修改密码,其实就是通过apache的cgi模块去实现,就是把数据提交到指定的地址操作。

       本次操作需要用到ApachePasswd包,网上有很多apachepasswd的包,但是用了之后发现无法重启服务了,所以要找符合当前VisualSVN版本的包。我准备的附件在VisualSVN4.2.1和VisualSVN4.3.4版本中,测试可用。所以推测,此附件适用VisualSVN4的版本。

本文用到的相关软件以百度云盘的方式,分享出来如下:

链接:https://pan.baidu.com/s/1rJ9-cTWRH0X0-5MVLZ9b3w 

提取码:feig 

二、具体操作步骤

1、停止VisualSVN服务

       因为要覆盖当前VisualSVN安装目录中的文件,不停止VisualSVN的话无法覆盖。

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

2、关闭VisualSVN当前窗口

       此操作的目的,仍然是防止有进程占用

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

3、解压附件

       把apachepasswd.zip解压出来,解压出的内容如下图:

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

       未被解压的附件覆盖前,原始VisualSVN安装目录内容如下图:

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

       把解压的所有文件覆盖到VisualSVN安装目录下,我VisualSVN的安装目录是:C:\Program Files\VisualSVN Server,覆盖后的VisualSVN安装目录内容如下图:

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能
一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

       可以看到,在VisualSVN安装目录多一个cgi-bin目录。VisualSVN增加在线修改密码功能,就是通过apache的cgi模块实现的。

4、修改httpd-custom.conf

       httpd-custom.conf这个文件,它在VisualSVN安装目录的conf子目录中。

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能
一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

5、修改cgi模块中的svnpass.ini文件

       svnpass.ini这个文件,它在VisualSVN安装目录的cgi-bin子目录中。

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

       修改svnpass.ini时,只需要修改pwdFilePath的路径即可,要注意修改成你自己的Repositories路径。Repositories的路径设定,在安装VisualSVN时指定的,我的Repositories路径如下图:

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

       修改svnpass.ini文件中的pwdFilePath

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

6、重新启动VisualSVN服务

       从开始菜单中,找到最近添加,即可快速找到VisualSVN,如下图:

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能
一步一步搭建Svn服务之VisualSVN增加在线修改密码功能
一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

三、测试在线修改密码

1、输入访问地址

       访问地址:http://ip地址/passwd.html

       此处的ip地址写你的VisualSVN中配置的IP,如下图所示:

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能
一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

       我的最终访问地址:http://192.168.8.100/passwd.html

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

2、修改密码操作

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能
一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

3、使用新的密码访问SVN服务

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能
一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

       在浏览器中,记录了之前SVN的访问记录,这次登录使用了新的密码,所以浏览器给出提示:要更新密码。

       至此,为VisualSVN扩展在线修改密码功能就结束,如果你操作的过程和我一样顺利,恭喜恭喜啊!

       但是有一些人操作就不顺利了,在全配置完成后,征订VisualSVN服务时,会报HTTP的错误,别着急往下接着看。

四、扩展

1、报错

       做完以上所有操作,重启VisualSVN报http错误如下:

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

点击 Start Event Viewer...     显示日志如下:我去提示的目录中看了,对应的mod_alias.so文件也在

vsvnhttpsvc.exe: Syntax error on line 45 of C:/Program Files/VisualSVN Server/conf/httpd.conf: Cannot load bin/mod_alias.so into server: \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xc4\xa3\xbf\xe9\xa1\xa3  

2、查看当前操作系统默认安装组件

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能
一步一步搭建Svn服务之VisualSVN增加在线修改密码功能
一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

3、安装SSMS

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能
一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

       此处我安装的SSMS版本是18.6

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能
一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

       从安装界面提示,可以看出来,在安装SSMS的同时,在本机安装了好多其它组件。

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

4、查看当前操作系统已安装组件

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

       可以看到安装SSMS时,自动安装了Microsoft Visual C++相关的组件

5、重启VisualSVN

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能
一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

       重启VisualSVN也正常了

6、访问测试

一步一步搭建Svn服务之VisualSVN增加在线修改密码功能
一步一步搭建Svn服务之VisualSVN增加在线修改密码功能

7、总结

继续阅读