Subversion+Apache2.2動態修改密碼方案

以下配置過程針對Apache2.2結合Subversion1.5.1進行配置。
1、        按默認設置安裝Apache2.2,安裝過程不在此敘述。
2、        安裝Subversion,安裝過程不在此敘述。
3、        配置apache與Subversion連接。
3.1、   Subversion的安裝目錄下bin文件夾,複製mod_dav_svn.so和mod_authz_svn.so到Apache的modules 目錄
3.2、   修改Apache的conf文件夾下配置文件httpd.conf,做出如下修改:
去掉以下幾行的註釋(刪除 '#'標記):
#LoadModule dav_fs_module modules/mod_dav_fs.so
#LoadModule dav_module modules/mod_dav.so
將以下兩行加到 LoadModule 節的末尾。
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
3.3、   從Subversion 安裝目錄bin下的:intl3_svn.dll, libapr-1.dll, libapriconv-1.dll, libaprutil-1.dll, libeay32.dll, ssleay32.dll  複製到 Apache 的 bin 目錄(如果不行, 就把所有的DLL到複製過去)
3.4、   重啓Apache後可看到Monitor界面有Svn的提示
4、     配置SVN
4.1、   配置SVN Repository創建SVN庫(參考上一篇文章)
4.2、   編輯 Apache 的配置文件httpd.conf, 在最後面加上如下內容:
<Location /svn>
  DAV svn
  SVNListParentPath on
  SVNParentPath "D:\SVNRepository"
  AuthType Basic
  AuthName "Subversion repositories"
  #AuthUserFile "D:\SVNRepository\passwd"
  #AuthzSVNAccessFile D:\SVNRepository\Access.conf"
  Require valid-user
</Location>
"D:\SVNRepository"爲你設置的svn資源庫地址
4.3、    創建 passwd 文件 在命令行格式下在Apache/bin目錄下使用如下命令創建文件
創建的命令格式:htpasswd -c passwd <username>-----------------添加新用戶命令:htpasswd -m passwd <username>
成功後在bin文件夾下生成passwd文件,複製到4.2步驟中  #AuthUserFile "D:\SVNRepository\passwd"所設置的指定位置,繼續修改httpd.conf文件
<Location /svn>
  DAV svn
  SVNListParentPath on
  SVNParentPath "E:\svn"
  #SVNIndexXSLT "/svnindex.xsl"
  AuthType Basic
  AuthName "Subversion repositories"
  AuthUserFile "E:\svn\passwd"  //注:該路徑爲password文件的路徑,根據實情修    改即可
  #AuthzSVNAccessFile "E:\svn\Access.conf"
  Require valid-user
</Location>
4.4    配置訪問權限
將原SVN的配置文件重命名爲並放置到  #AuthzSVNAccessFile "E:\svn\Access.conf"位置,去掉#號
5     遠程密碼修改 Apache22Passwd.rar (85.38 KB) 下載此安裝包
遠程修改基於apache配置的Subversion密碼的工具ApachePasswd,ApachePasswd是一個用於修改Apache中 AuthUserFile的工具,編寫時主要是爲了遠程修改基於Apache配置的Subversion的用戶密碼。
目前提供for apache2.0版本及for apache2.2版本。
使用方法:
    1  將文件Apache2xPasswd.cgi及Apache2xPasswd.cgi.ini複製到Apache的CGI腳本目錄下,通常是cgi-bin目錄。(這句話中的x請用相應的版本代替,如for apache2.0,則爲Apache20Passwd.cgi)
    2  如果是for apache2.2版本,複製apache的bin目錄下libapr-1.dll、libapriconv-1.dll、libaprutil- 1.dll到Apache2xPasswd.cgi所在的目錄
    3  修改配置文件Apache2xPasswd.cgi.ini中auth_user_file路徑,如下
       [path]auth_user_file=這裏改爲你的Subversion所用的AuthUserFile全路徑,如 D:\SVNRepository\passwd  
    4  重啓計算機
    5  現在服務器的http://localhost/cgi-bin/Apache2xPasswd.cgi就可以看到修改 subversion密碼的界面了。  //注:其中X用對應Apaceh版本號替換。
        一般用時都是將Apache2xPasswd.cgi改名爲svnpass,這樣用戶修改密碼時可以少打些字
        如訪問http://localhost/cgi-bin/svnpass就可以修改密碼了。當改名爲svnpass時,配置文件 Apache2xPasswd.cgi.ini要相應地改爲svnpass.ini,因爲這個腳本是根據自己的文件名找配置文件的
        如果你配置了多個AuthUserFile,可以複製出多個ApachePasswd,配置多個相應的.ini,這樣就可以修改多個 AuthUserFile了。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章