因為自己學校目前是使用 Openwebmail + LDAP 驗證
然而 LDAP 是不分大小寫的,所以就算英文 key 大寫的也可以驗證通過
今天 Google 了一下 Perl 程式的語法,發現將英文轉大寫的語法是 uc,轉成小寫的語法是 lc
所以編輯 .openwebmail.pl 檔案找到下面二段的語法
sub login {
my $clientip=ow::tool::clientip();
$loginname=param('loginname')||'';
$loginname=lc $loginname;
$loginname=~s/\s//g; # remove space,\t,\n,\r
$default_logindomain=safedomainname(param('logindomain')||'');
sub autologin {
#auto login with cgi parm or cookie
$loginname=param('loginname')||cookie('ow-loginname');
$loginname=lc $loginname;
$loginname=~s/\s//g; # remove space,\t,\n,\r
這樣就可以了!再也不會有學生因為登入輸入大寫的字母而有問題啦!
全站熱搜