I want my users to be able to search WSS sites from the portal. These
sites can be both the top level site in the collection as well as
subsites under it. I want to set it up such that it returns results
from the site and all sites below it in the hierarchy. I tried
different ways to achieve this without any luck.
Approach 1)
I created content source for the parent and the child site by choosing
Content type : Web page/Web site and keyed in the location of the WSS
site. I created search scopes to limit the search to the content
source. When I search for something by choosing the child search
scope, I not only get results from the child but also from the parent.
I then changed the rules to:
http://portal/sites/parent/child/* include
http://portal/* exclude
It started working as anticipated for the child, but the parent was
broken. It returne "No results".
Approach 2)
Unable to get it work with (1), I switched to the Advanced Search mode
and created indices. I created one index for the child and one for the
parent. I then changed the rules accordingly
for child:
http://portal/sites/parent/child/* include,
http://portal/* exclude,
and for parent:
http://portal/sites/parent/* include,
http://portal/* exclude
Search returned no results when child scope was selected.
Approach 3)
After googling for a while, I stumbled across this
www.microsoft.com/.../sc
con-sd.mspx#EEAA
and tried to implement it.
a. I added Content sources for child and the parent, this time the
Content type: Sharepoint Portal Server Site Directory was choosen. I
assigned different Source Groups for parent and child.
b. I went to "Manage Crawls of Site Directory" and for the Parent site
entry (that already existed), I selected for the Crawling
behavior "Crawl site in <Parent source group> in Non_Portal_Content".
I then added an entry for the child (not sure if this can be done) and
selected for the crawling behavior "Crawl site in <Child source group"
in Non_Portal_Content".
c. I then created Search scopes to point to the respective source
groups.
I then tested if search would work. Then again, it did not return
results when the child scope was selected.
The requirement seems pretty simple to me. I do not understand why
it's so complicated to implement it.