FindinSite-MS: Search engine for an ASP.NET website   .
  search
Powered by FindinSite-MS
. Home | Installation | Indexing | Control Panel | Web services | Advanced | Purchasing .
. .
  Feature list | Awards | Hosted search | Download | Getting started guide | Versions | Readme

 

Getting started with findinsite-ms


findinsite-ms is a search engine for a web site or Intranet. It runs on an ASP.NET based web server, eg Internet Information Services (IIS) on a Microsoft Windows Server, or "Microsoft Hosting" packages on shared hosts.

  • Please make sure that ASP.NET is available, with the .NET framework 2.0 or later. If you want a version that runs ASP.NET 1.1, please contact us.

You can test findinsite-ms on your own computer if you are running Windows XP Pro with IIS 5 and the .NET framework installed (or Windows Vista with "Internet Information Services" including ASP.NET installed). Let us know if you want access to an example online installation.  WARNING: if running findinsite-ms on your own computer, then indexing seems to occasionally hang up if you are also running Visual Studio.NET - the hangs only seem to occur if the web site redirects page URLs.

  1. Try findinsite-ms online
    • Try out an online search using findinsite-ms.  This search page should automatically use your preferred language, provided that it is one of the currently supported languages.  Try out various searches to confirm that findinsite-ms meets your requirements. Check out the highlighting of search words in hit web pages.
    • findinsite-ms also has a Search API - an XML web service that lets a programmer talk to the search engine direct. The search API description online has links to various examples to try out.

    The best way to try out findinsite-ms is to download the development kit and run it on a test system, eg on your computer. However if you want access to an example installation then email sales/support.

  2. Get findinsite-ms
  3. Install findinsite-ms
    1. The Installation instructions tell you how to install findinsite-ms locally on your own computer, or on a shared server. It is usual to install to a new directory in the web site root called findinsite.

    2. You may need to set the file permissions for the 'work' directory used by findinsite-ms to store information. Also - check that the 'work' directory is in a suitable location.
      Note that you may also want to change the IIS permissions so that the work directory cannot be read by direct browser requests - see here for details. If this is not possible, please store your password and license id in the Web.Config file - as described here.

  4. Check findinsite-ms runs OK

    findinsite-ms should now respond at URLs similar to these:

    • http://www.example.org/findinsite/default.htm - documentation
    • http://www.example.org/findinsite/search.aspx - search page
    • http://www.example.org/findinsite/config.aspx - control panel
    • http://www.example.org/findinsite/SearchService.asmx - Search API web service

    For example, if you have installed on your own computer, the Control Panel should be at this URL: http://localhost/findinsite/config.aspx.

    If you installed the full development kit directory, then findinsite-ms should search its own documentation and show results correctly.

    Common problems

    • If you see a screen that starts like this then you probably need to mark the findinsite directory as an application:
      Server Error in '/' Application.
      Configuration Error
    • If the findinsite-ms Control Panel responds, but says that it cannot use its work directory, then you probably need to set the file permissions.

  5. Search your web site

    The indexing instructions tell you how to use the Control Panel to:

    • Create a regular indexing run to index your site to build a search database.
    • Tell findinsite-ms to use this search database.

    Then try out searching your web site using findinsite-ms. Add links or a form from your web site to call findinsite-ms.

    Email sales/support to ask for a Temporary License to release all Free license limitations.

  6. Advanced configuration options
    • Alter the look and feel, eg hits-list results, using template files.
    • If you want to fine tune the hits-list, use the Search API to get the results and format or reorder as you wish.
    • Customise word highlighting in web pages.
    • You can search more than one search database - add to the list in the Control Panel Searching section.  You can set up search forms that let the user choose which search database subsets to use.
    • Use a meta-data fields search.
    • Add more languages to the findinsite-ms user interface.  Please let us have a copy of any new language files.
    • Change the Web.Config parameters for findinsite-ms.

  7. Go live on your main web server
    • Buy a findinsite-ms license.
    • Follow the above instructions again to install and configure findinsite-ms on your server.
    • Test findinsite-ms on your web site.
    • Add links or forms from your web site to call findinsite-ms.

    • Make sure that you have set up a regular indexing run to keep the search database up to date with any changes on your web site.

Load balanced servers

A load balancing web server farm/cluster spreads incoming requests between several physical servers to share the load to respond quickly to the requests that arrive.

findinsite-ms may need to be set up carefully to run correctly on a server farm. If each physical server is completely independent and can index its own site/URL correctly, then findinsite-ms will run fine on each separate server.

The simplest solution for web server farm running is to turn off file replication for the findinsite-ms work directory for each physical server instance, so each findinsite-ms runs independently.

There are other possible solutions. Please read the following rules to understand how findinsite-ms runs:

findinsite-ms application start timings:

  1. findinsite-ms reloads its entire configuration and search databases whenever it starts or restarts. IIS worker process recycling will typically stop findinsite-ms at some stage, eg after a certain length of time, number of hits, etc. findinsite-ms will only restart when a user makes a request. You can also set up a keep-alive request to ensure that findinsite-ms is always restarted promptly.

Now consider main configuration of findinsite-ms:

  1. findinsite-ms loads its main configuration into memory at startup from file findinsite.xml in the work directory; any configuration changes done by the user are stored in the configuration file. The configuration file is also updated when each indexing run is completed.
  2. The main configuration file is never checked for updates and reloaded.

Next, consider how findinsite-ms uses its search databases:

  1. findinsite-ms stores loads the current search databases (partially) into memory at startup from the search database files. (For each named search database site, two file sets are usually stored: site and site_. When a search database is re-indexed, the newer one, eg site_ is untouched, and the other one, eg site is rebuilt.) A search database is reloaded when an indexing run is complete.
  2. (From version 1.68) findinsite-ms checks every hour to see if any of its loaded search databases have been updated. If so, then it reloads the relevant search databases. In normal running, this should never happen as a search database is reloaded after each indexing run. However, if the search database is copied in from elsewhere, then this process ensures that the latest search database is loaded.

Everything's swinging
  All site Copyright © 1996-2014 PHD Computer Consultants Ltd, PHDCC   Privacy  

Valid HTML 4.01 Transitional Valid CSS!

Last modified: 23 October 2009.