必須手動定義用於排序用戶端搜尋結果的自訂瀏覽索引。若要建立瀏覽索引或虛擬清單檢視 (VLV) 索引,請使用下列程序。本節亦包含增加或修改瀏覽索引項目與重新產生瀏覽索引的程序。
針對此程序的某些部分,您可以使用 DSCC 執行此作業。如需相關資訊,請參閱目錄服務控制中心介面與 DSCC 線上說明。此程序的其他部分只能使用指令行完成。
使用 ldapmodify 指令新增瀏覽索引項目或編輯現有的瀏覽索引項目。
如需相關指示,請參閱增加或修改瀏覽索引項目。
執行 dsconf reindex 指令以產生一組新的瀏覽索引保留在伺服器上。
如需相關指示,請參閱重新產生瀏覽索引。
瀏覽索引專用於指定基底項目與其子樹狀結構上指定的搜尋。瀏覽索引配置會在包含項目的尾碼資料庫配置中定義。
配置目錄伺服器上每個瀏覽索引的 vlvBase、vlvScope 與 vlvFilter 屬性。
這些屬性會配置搜尋的基底、範圍與篩選器。這些屬性使用 vlvSearch 物件類別。
配置每個瀏覽索引的 vlvSort 屬性。
此屬性會指定排序索引的一或多個屬性名稱。此項目是第一個項目的子項,並使用 vlvIndex 物件類別指定要排序的屬性與排序的順序。
下列範例使用 ldapmodify 指令建立瀏覽索引配置項目:
$ ldapmodify -a -h host -p port -D cn=admin,cn=Administrators,cn=config -w - Enter bind password: dn: cn=people_browsing_index, cn=database-name, cn=ldbm database,cn=plugins,cn=config objectClass: top objectClass: vlvSearch cn: Browsing ou=People vlvBase: ou=People,dc=example,dc=com vlvScope: 1 vlvFilter: (objectclass=inetOrgPerson) dn: cn=Sort rev employeenumber, cn=people_browsing_index, cn=database-name,cn=ldbm database,cn=plugins,cn=config objectClass: top objectClass: vlvIndex cn: Sort rev employeenumber vlvSort: -employeenumber ^D |
vlvScope 為下列其中之一:
0 僅針對基底項目
1 可針對該基底的下一層子項
2 可針對根目錄在該基底的整個子樹狀結構
vlvFilter 是用戶端搜尋作業中所用相同的 LDAP 篩選。由於所有瀏覽索引項目皆位於相同位置,因此您應使用描述性 cn 值命名瀏覽索引。
每個 vlvSearch 項目至少須有一個 vlvIndex 項目。vlvSort 屬性是定義要排序的屬性與排序順序之屬性名稱的清單。屬性名稱之前的破折號 (-) 表示反向順序。您可以定義數個 vlvIndex 項目,以為搜尋定義多個索引。您可以為之前的範例增加下列項目:
$ ldapmodify -a -h host -p port -D cn=admin,cn=Administrators,cn=config -w - dn: cn=Sort sn givenname uid, cn=people_browsing_index, cn=database-name,cn=ldbm database,cn=plugins,cn=config objectClass: top objectClass: vlvIndex cn: Sort sn givenname uid vlvSort: sn givenname uid ^D |
若要修改瀏覽索引配置,請編輯對應的 vlvSearch 項目或對應的 vlvIndex 項目。
若要移除瀏覽索引而使得伺服器不再保留該瀏覽索引,請移除個別 vlvIndex 項目。
或者,如果僅存在一個 vlvIndex 項目,則同時移除 vlvSearch 項目與 vlvIndex 項目。
建立瀏覽索引項目之後,請產生指定屬性的新瀏覽索引。
$ dsadm reindex -l -t attr-index instance-path suffix-DN |
該指令會掃描目錄內容,並建立瀏覽索引的資料庫檔案。
下列範例會產生上一節定義的瀏覽索引:
$ dsadm reindex -l -b database-name -t Browsing /local/ds \ ou=People,dc=example,dc=com |
如需 dsadm reindex 指令的更多資訊,請參閱 dsadm(1M) 線上手冊。