环境
CentOS Linux release 7.6.1810 (Core)
iF.SVNAdmin-stable-1.6.2
描述
在部署 iF.SVNAdmin 后,网页第一次访问时,进行 iFSVNAdmin 的初始配置(使用 LDAP 认证),所有测试均通过,保存配置文件后,这一直报错:
Exception list
You have to define a user view provider.
原因
由于在进行 iFSVNAdmin 的初始配置时,可能是使用了“网页翻译”,将英文翻译为中文,在没有取消“网页翻译”状态下,直接进行了保存操作,导致 iFSVNAdmin 配置文件最终出现错误。(操作人使用360极速浏览器并进行了网页翻译, 太懒了就不去复现了。)
解决
通过 SSH 进入机器,并手动修改配置文件,以匹配。
vim -R /var/www/html/svnadmin/data/config.ini
正确的 LDAP 配置文件如下所示:
[Common]
FirstStart=0
BackupFolder=./data/backup/
[Translation]
Directory=./translations/
[Engine:Providers]
AuthenticationStatus=basic
UserViewProviderType=ldap
UserEditProviderType=
GroupViewProviderType=svnauthfile
GroupEditProviderType=off
AccessPathViewProviderType=svnauthfile
AccessPathEditProviderType=svnauthfile
RepositoryViewProviderType=svnclient
RepositoryEditProviderType=svnclient
[ACLManager]
UserRoleAssignmentFile=./data/userroleassignments.ini
[Subversion]
SVNAuthFile=/var/svn/authz_ldap.conf
[Repositories:svnclient]
SVNParentPath=/var/svn/repos
SvnExecutable=/usr/bin/svn
SvnAdminExecutable=/usr/bin/svnadmin
[Users:passwd]
SVNUserFile=
[Users:digest]
SVNUserDigestFile=
SVNDigestRealm=SVN Privat
[Ldap]
HostAddress=ldap://192.168.200.2:389/
ProtocolVersion=3
BindDN=CN=svn,OU=Yudelei,DC=yudelei,DC=com
BindPassword=1.q
CacheEnabled=false
CacheFile=./data/ldap.cache.json
[Users:ldap]
BaseDN=OU=Yudelei,DC=yudelei,DC=com
SearchFilter=(&(objectClass=person)(objectClass=user))
Attributes=sAMAccountName
[Groups:ldap]
BaseDN=DC=insanefactory,DC=com
SearchFilter=(objectClass=group)
Attributes=sAMAccountName
GroupsToUserAttribute=member
GroupsToUserAttributeValue=distinguishedName
[Update:ldap]
AutoRemoveUsers=true
AutoRemoveGroups=true
[GUI]
RepositoryDeleteEnabled=false
RepositoryDumpEnabled=false
AllowUpdateByGui=true