Implementation suggstions for multiple sites

Post Reply
jon-paul
Posts: 15
Joined: Wed Jul 21, 2004 12:36 pm

Implementation suggstions for multiple sites

Post by jon-paul »

Looking for some suggestions regarding my situation.

I work for a company that has about 13 divisions, each has their own site (or soon will have one).

We host them all off of one server with IIS.

We just purchased Webinator Pro and are about to being implementation.

Our thoughts would be to include results from the site you're on but also results from the other company's sites as well, in case your search doesn't relate to the company your currently viewing.

Option 1 would be to create a database for each site and also walk all the other sites. This solves the problem of a branded search page (so you don't feel like you've left the site) but it causes each site to be indexed numerous times. I think that's inefficient.

Option 2 would be to create a sub-domain such as: search.mycompany.com > have one database that crawls all the sites > create categories for each domain > then when searching from within a site > pass in the category to display results just for that site. This seems logical as it's only indexing each site only once, but somewhat defeats the purpose of staying within the site/brand.

The sites we have are not large by any means (at the most 100pages per site - some dynamic and static).

I also read in a post here (from '99) that you could dynamicly change the top and bottom html dependant upon a value you pass in. Is this still feasible?

Thoughts? Suggestions?

Thanks for your time

Jon-Paul LeClair
User avatar
mark
Site Admin
Posts: 5519
Joined: Tue Apr 25, 2000 6:56 pm

Implementation suggstions for multiple sites

Post by mark »

Yes, you can still fully customize the search appearance by editing the script.

Another slightly more complicated option would be to walk each separately as in option 1 above. Then, by hand (scripted), combine those into one large database. Then the search could search the site specific one and/or the full database. I think there are other threads here about merging databases.

For your small sites your option 2 might be best. Just change the search script to provide the desired look based on what site it's run from.
jamon
Posts: 163
Joined: Wed Jun 26, 2002 9:35 am

Implementation suggstions for multiple sites

Post by jamon »

We do the "walk each site separately, and then combine into one database" solution. It was a pain to get it set up, but now that it is, it works nicely. One drawback: we can't just rewalk and have the DB automatically flip to new. We have to rewalk the individual sites without flipping the switch to make the new info live, re-combine into one DB, and then flip the switch. So, it always involves a manual process.
jon-paul
Posts: 15
Joined: Wed Jul 21, 2004 12:36 pm

Implementation suggstions for multiple sites

Post by jon-paul »

Mark...

Thanks so much for your quick reply...

I'm strongly considering my option 2 of a search sub-domain; search.mycompany.com and pass in a hidden value to the search script and display the results within that site's look and feel. Seems like a logical, efficient option.

I'm pretty sure I want to use a <switch><case> statement to do this, but my question is where exactly should I plop this script within TOP and BOTTOM functions since there's an IF/THEN statment?

My guess is after the first ELSE statement.

Suggestions?

Thanks again!

Jon-Paul

----
<A NAME=top>
<init>
<if $SSc_lftop ne ""><!-- profile has a top html -->
<!-- replace $query in html with the user's query -->
<strfmt "%H" $query>
<sandr "\$$query=\F[^_\alnum]" $ret $SSc_lftop>
<send $ret>
<else><!-- no profile html, use default -->
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=$charsetdisplay">
<TITLE>Search: $query</TITLE>
</HEAD>
<BODY BGCOLOR=white>
</if>
<if $mode ne ""><!-- administrative mode -->
<FS>
<!-- provide links back to admin -->
<sandr "[^/]+/?>>=" "dowalk\?profile=%U\&opts=%U" $urlroot>
<strfmt $ret $pr $opts>
<p>Test mode
- <a href="$ret">Back to Administration</a>
<sandr "[^/]+/?>>=" "dowalk/Update.html\?profile=%U\&opts=%U\&SSc_applylf=Y" $urlroot>
<strfmt $ret $pr $opts>
- <a href="$ret">Make this appearance live</a>
</F><p>
</if>
</A>
----
User avatar
mark
Site Admin
Posts: 5519
Joined: Tue Apr 25, 2000 6:56 pm

Implementation suggstions for multiple sites

Post by mark »

The if just provides a default if there's none specified in the profile. You may just want to drop the whole if/else and replace with your switch.
User avatar
John
Site Admin
Posts: 2622
Joined: Mon Apr 24, 2000 3:18 pm
Location: Cleveland, OH
Contact:

Implementation suggstions for multiple sites

Post by John »

One way to provide the hidden value is to use the host name if you have search.division.company.com then you can switch on $HTTP_HOST.
John Turnbull
Thunderstone Software
jon-paul
Posts: 15
Joined: Wed Jul 21, 2004 12:36 pm

Implementation suggstions for multiple sites

Post by jon-paul »

Guys, you've been great...thanks again.

I think I have the <switch> thing figured out...playing around, I did figure if I dropped the IF/Else and put my <switch> in place...I got things to work.

I like John's suggestion of using the HTTP_HOST info...I think my approach will be to create sub-domains for all our sites: search.division.com but point those addresses to same search page using IIS header info. This way the user stays within the given domain and my links stay relative.

Hey...this isn't as hard as I thought it'd be!

Thanks guys!
Post Reply