Linux下Apache+SVNユーザーに自分でSVNパスワードを修正させる

3949 ワード

デフォルトではLinuxのApache+SVNではパスワードを変更する機能は提供されていません.ここでPHPスクリプトを使用して、ユーザーにパスワードを変更する方法を提供します.
まず、ユーザはパスワードを変更する前にログインする必要があるが、ログインの検証方法はSVNにアクセスするのと同じであり、/etc/apache 2/mods-available/alias.confには以下の構成が加わる
Alias /svntools/ "/var/www/svntools/"  
  
    AuthType Basic  
    AuthName "svntools repository"  
    AuthUserFile /var/repository/htpasswd  
    Require valid-user  
 

ステップ2では、/var/www/svntoolsディレクトリを作成し、indexなどのphpファイルを作成します.php、次のコードを入力




Subversion         




<!--
function loginIn(myform)
{
var newpass=myform.newpass.value;
var repeatpass=myform.repeatpass.value;
if(newpass==""){
alert("     !");
return false;
}
if(repeatpass==""){
alert("       !");
return false;
}
if(newpass!=repeatpass){
alert("         ,     !");
return false;
}
return true;
}
//-->





Subversion
=$username?>
//<!-- alert("<?=$msg?>"); window.location.href="<?=$_SERVER["PHP_SELF"]?>" //-->

ステップ3では、ユーザーパスワードファイル権限を変更します.
chown www-data:www-data  /var/repository/htpasswd
ステップ4、アクセスhttp://hostname/svntools/index.php
PS:ネット上で提供されているユーザーパスワードの変更は基本的にこのスクリプトに似ていますが、phpのページには「」ラベルの後ろに「php」文字列を付ける必要があります.そうしないと、正常に動作しません.