svn结合apache后用户修改密码的解决方案

 

svn结合apache后,修改密码就得在server端,由管理员修改密码,很不方便也不安全。

现在做已了一个web界面实现用户svn密码的修改。

我用php,做了两个页面,一个是信息收集,一个是调用系统命令

前置条件:apche已集成了svn,php

1.apache添加svntools访问目录

在/etc/ini.d/http.conf

Alias /svntools "/opt/svntools/"

AuthType Basic

AuthName "Subversion Tools"

AuthUserFile /opt/svn/passwd

Require valid-user

2.在/opt/svntols目录下创建php页面
    2.1 index.php页面
          
Change your svn passwd

Change your svn password


$username = $_SERVER["PHP_AUTH_USER"];
$authed_pass = $_SERVER["PHP_AUTH_PW"];
?>

Subversion Change password
username:
oldpassword:
newpassword:
repeatnewpassword:

    2.2 result.php页面
          

RESULT

$user = $_POST["hide"];
$pwd = $_POST["newpwd"];
$command = "htpasswd -b /opt/svn/passwd $user $pwd";
exec($command,$res,$rc);
if($rc == 0){
echo "success";
echo "
";
echo "please remember your username and password.";
echo "
";
echo "username: $user ";
echo "
";
echo "passwd: $pwd";
echo "
";
}else{
echo "fails ";
}

?>

参考了以下这篇网文

http://tech.16c.cn/svnpz/20080202/58.html

你可能感兴趣的:(svn)