SharePoint 2010 で検索を構成していて、はまりました。

通常の検索は問題なく行えます。しかし、ユーザー (ひと) を検索しようとしてもヒットしません。

User Profile 専用のクロール ルールを作成し、

https://somewhere.com
sps3://somewhere.com

といったように、検索先アドレスを指定していたのですが…。もう、ピンと来ましたか?

イベント ログには、次のように記録されています。

ログの名前: Application
ソース: Microsoft-SharePoint Products-SharePoint Server Search
イベント ID: 14
タスクのカテゴリ: Gatherer
レベル: 警告
説明:
開始アドレス sps3://somewhere.comをクロールできません。
コンテキスト: アプリケーション ‘Search_アプリケーション’、カタログ ‘Portal_Content’
詳細 :
指定されたタイムアウト時間内にリポジトリからの応答がなかったので、このアイテムをクロールできませんでした。しばらくしてからリポジトリのクロールを再試行するか、検索管理の [プロキシとタイムアウト] ページでタイムアウトの値を長めに指定してください。オフピーク時にこのリポジトリのクロールを実行することもできます。(0x80040d7b)

さて原因ですが、プロトコル ハンドラの名前 sps3 を、sps3s にすべきだったのです。そう、サイトを SSL で保護していたのです。

脱力しました….。数時間が…..。

あと、検索の構成に関しては、こちらのエントリが、非常に役に立ちました。

Successful SharePoint 2010 People Search

また、プロトコル ハンドラの一覧は、こちら。

http://technet.microsoft.com/ja-jp/library/dd695731(office.12).aspx