For really interesting articles how searching your site might be different than searching internet see
ACM Queue issue on Enterprise Search. This will provoke you to ask question like:
- is there hierarhical (taxonomy) data about site?
- is there more meta data or structure in your site than supported by out-of-the-box solution?
- do I want to write my search engine?
My site isn't enterprise, but getting wider picture is always beneficial.
I could also recommend Xapian search engine which comes with Omega indexer and cgi search programs (written in C++), but there is also Search::Xapian.