click here for a plain text version
    #####    ###     ##  ### ########              ###     ##  ###    ###TM
  #######  #######   ####### ########            #######   #######  #######
 ###      ###   ###  ###         ###            ###   ###  ###     ###   ##
 ###      ###   ###  ##       ###               ###   ###  ##      ###   ##
  #######  #######   ##      ########    ###     #######   ##       #######
    #####    ###     ##      ########    ###       ###     ##           ###
                                                                     #####


Welcome to corzoogle and corzoogle pro!

(c) 2003->tomorrow! ~ cor + corz.org ;o)


    Thanks to everyone who gave feedback on the 0.9 betas!


Itstory..



 1.0.2
        corzoogle will now only add searches to the "recent hits" list if they
        returned results on your site. People searching for, well, you can
        imagine, will not create any content on your site containing that text.

        SEO spammers, in particular, like to run searches for their domain on
        other, more popular domains.


     +  corzoogle will perform checks to ensure that there is never duplicate
        entries in the recent hits list. This is especially important if you run
        adsense ads on your site (yup, they run searches!).

        Recent hits will now also follow any "short" link you may have corzoogle
        running under, e.g. /search?q=previous


     +  Added "whole word" matching. Normally, if you searched for "refer",
        you would get results back for "preference""referrer", and so on. With
        this enabled, you wil only get results back for pages containing the word
        "refer".

     +  Added user options.

        The first of these is.. suprprise surprise.. Whole word matching. The
        user can check a box to enable/disable this behaviour (if the web master
        has the whole word matching option enabled).



 1.0.1  [current release] [2013-12]

    +   Improved document title - it now states the version number and current
        search query.

    +   The recent hits is now returned as a <nav>, which should weight its
        results better with spiders.


v1.0

    Enter corzoogle pro..

    +   corzoogle now outputs beautiful, 100% compliant HTML5 web code with CSS
        controlling all the positional and style elements.

        Too many stylistic improvements to note. En-Joy!

    +   Option to include different style sheet for short pages (corzoogle will
        automatically switch when it returns less that three results).

    +   Improved pop-up titles.

    +    Improved URL encoding in results.

    +    Improvements to the mailer functions, it is more robust under various
        server setups.

    +    Improved mail notification.

    +   corzoogle now reads inside gzipped (.gz) files (by request).

    +   Configurable mailer Line-Breaks, more a work-around for current Postfix,
        (maintainer) than an actual feature.

    +   You can now configure the location of the hits file. If you cannot
        create a writable file in corzoogle's directory, perhaps you can use the
        system temp directory, or something like that.

    +   You can now add a notice to corzoogle, which will display under the main
        search form. You can use it to tell your users anything at all.

    +   Improved the recent hits stylings, with its own css class, and fully-
        configurable character widths, you can put it anywhere on the page, and
        do anything with it. I also improved its arithmetic, and it should now
        remain within whatever limit you have set, e.g. 80 characters.

    +   corzoogle will now perform intelligent transformation of any hits from
        your corzblog installation. It can also create "flat links", if you use
        and prefer that.

    +   You can now have a list of bot agents that will *not* trigger a
        notification email on searching your site.

    +   File existence checks for included code (e.g. footer)


    ~   Added  rel="nofollow" to the recent searches links - Google has a
        million of my search pages stored!

        I note it because some may want to remove this, make it seem (at Google,
        et al) that you have thousands of extra pages!


    *    Fixed entity encoding in result snippets, even really bad HTML pages
        should produce validating snippets. You still need to go fix your dodgy
        pages, though!

    *    fixed potential php notices for missing bot agents file (so the mailer
        knows who *not* to notify you about).

    *   Many, many minor undocumented fixes and improvements.




v0.8.4

    End of the line for corzoogle FREE!

    fixed occasional issue with snippets being *much* longer than they should
    have been.

    minor xhtml integration


v0.8rc3 [current release]

    a few minor surface changes. everything is nice and stable.


v0.8rc2

    fixed the bug with the search between tags. I really don't
    know how that > got deleted! but it was a while ago! certain documents with
    plain old <body> tags were being ignored in the search results. this only
    applied to case-sensitive search-between tags, the default setting.

    results snippets will now always begin at proper word boundries.

    corzoogle will now automatically select the query terms in the input box, so
    you can begin another search immediately, if you need to, by simply typing.
    a small but significant improvement.

    fixed the form focus error some browsers gave by basically just removing the
    second form altogether, it just caused problmes anyhow.



v0.7.5b6 - v0.8rc1

    minor changes, too busy to document!

v0.7.5b5

    altered slightly the way corzoogle strips undesirable characters from the
    input query. instead of replacing them with a space, they are simply
    removed. a search for need w[[ords would search for need+words, previously
    we would have got results for need+ords, the "w" having been removed as a
    single letter.

    added "extension mangling"..

    Let's say you have a php site, and you keep your content in files ending
    .htm, but if they are accessed directly, you redirect (with htaccess) to the
    php container page. now you can have corzoogle alter the extension for you,
    so the link goes directly to the php file. a hit for "darkstat.htm" would
    link directly to "darkstat.php"

    another use for mangling is .comment files. rather than the raw comment
    file, you want the user to load the page it is attached to. so a hit for
    "darkstat.php.comment" will present a link directly to
    "darkstat.php#comments". the "real" filename, as always, is available by
    hovering the mouse over the title.

    this feature will be disabled by default, to enable, simply uncomment
    (remove the "//" from in front of) the line beginning..

     //$mangle = array(...

    put the ".. " back in the end of snippet pieces in multiple query searches,
    no more weird words in the snippets.

    added a preference for the length of the "latest hits" links. the default is
    enough hits to fill 81 chracters, but you can change that now.

    removed some limitations of the search_between feature. will be more
    accurate when using mixed start and end tags. if your end tag doesn't exist,
    but the start tag did, corzoogle scans right to the end of the document. you
    could even enter a bogus tag to have corzoogle always do that.



v0.7.5b4

    added a preference for "embedding", for folks that want to run corzoogle
    from inside another page. corzoogle will return the results in the same
    space.

    added some notes about the $search_between preference, and how it relates to
    $search_in_tags.

    added multiple corzblog searching. previously we were limited to a single
    blog installation. you no longer need to specify this, corzoogle will return
    correct results for any number of blog installations automatically. I
    spotted this limitation after I started my devblog. if you use a name other
    than "arc" for your corzblog archives, this functionality will break, though
    you could edit in whatever name you do use. (why would anyone want to change
    that?)


v0.7.5b3

    fixed a bug I introduced in 0.7.5b1, where certain queries, matching words
    right at the end of the text could produce unexpected results, usually
    putting the entire page into the preview.

    fixed a minor bug where certain documents could potentially be scored twice
    for their filename.

    added facility to set initial scoring weight in a multiple-query term.

    added switch to force corzoogle to only search documents containing your
    chosen $search_between tags, particularly for folks that use custom
    $search_between tags.



v0.7.5b2

    added "notify" facility for searches. you can be emailed every time someone
    searches your site! you might want to put a filter on that!

    this facility is disabled by default, and completely untested; please report
    back any interesting findings.

    $search_between tags can now be case-insensitive, if you need that.



v0.7.5b1

    small performance improvements when searching for queries
    with -not words

    "search between" tags can be case-sensitive (default) or case-insensitive,
    the latter is marginally slower, but potentially useful.




v0.7.4

    added (ugly) highlights to "exact" word matches. they are disabled by
    default (they were sort of in there already, some one wanted them working)
    This looks like someone drew a marker pen through all the exact hits *eew*

    added a switch for searching inside html tags. I'll set this to false, which
    produces neater reults. if you are using coroogle to "grep" your site for
    editing, or searching web-development technical documentation, or such-like,
    you'll likely want to set this to true.

    preview snippets can now be presented with the query terms in context, in
    other words, the query term appears some way into the text, and not right at
    the start of the snippet. aids comprehension. of course, how far in the term
    appears, is configurable in the prefs.

    corzoogle now attempts to create the "recent hits" file if it's not there,
    which it did originally (dunno how that got switched off). There's still a
    message if this wasn't possible (likely).

    fixed a wee bug where html tags were being passed to the "past-hits" and
    users could create interesting html structures at the foot of results pages.

    added a few "googies" to the distribution; customised Apache manual index
    page with built-in corzoogle search, is one.


v0.7.3.6

    added < and > to the removed characters. You won't get
    unexpected html structures in the results now. Searching for "<select name",
    for instance, would create a nice select option. Amazingly, corzoogle still
    returned all the results just fine!



v0.7.3.5

    fixed a missing "" double-quote on the inline image's
    url tag. oops. must have been in a hurry packaging this one.

    added a preference for this now. you can specify an image location, or use
    'embedded'. the choice is yours. that's right; if you hadn't noticed, the
    image is contained within the script itself. (scroll down) this is highly
    cool, yes, but please do read the notes about that inside corzoogle,
    especially if you are running corzoogle on a 'live' website.

    a few other minor gui thingies.




v0.7.3

    fixed trailing slashes problem on search terms. this also
    fixes the stop-words weirdness. "that's", will be removed now, as expected.

    fixed a bug where if you had set corzoogle to score for all titles (not the
    default), it was grabbing the document titles twice. oops. fixed a few other
    minor bugs.

    if a document has no title, and the filename has become the title in its
    place, we now remove the extension before scoring. if you have
    score_all_titles set to true, a search for php will *not* now return every
    php file in the zone! this applies to regular file searches, and also the
    display titles of the results. you still get the file extension if you hover
    the mouse over.


v0.7.2

    a couple of speed optimisations. Aye, just when I thought I had every
    last ounce.

    Fixed the search limit so that it will definitely stop at whatever you set,
    regardless of the number of hits from one folder.

    removed a potential bug where certain incredibly long single-term gibberish
    words could cause an error. you should see the gramotki with all my test
    phrases on it! I think the one that revealed the potential error was
    http://corz.org/corzoogle.php?q=men+-pipe+-0g
    +-645987.,%3E%3C%3E%3C8+/.,,.+8(*^gf
    //././%3E\.\,;+%60~~876+]+][][+3498*&amp;(^ except without the spaces ;o)



v0.7.1

    discovered the error_reporting (E_ALL) php setting, and so cleaned up a heap
    of undefined variables and suchlikes. (and here was me just luvvin this not
    having to declare variables "feature") these are only "warning" level errors
    which most of us would never see, but still, ya know, they were there.

    I think I got them all, but search conditions are a factor. I'll scan
    through again, but if you come across any yourself, do let me know. some are
    almost unnavoidable, and many just create checking code *sigh*, anyway,
    error reporting should always be off on production servers.


    you can now alter the hot-link message. I noticed a couple of weird (weird
    as in unintelligible strange writing, their contant may have been perfectly
    sedate) foreign sites using corzoogle and I thought maybe "hot-link my
    butt-stink"
 would be less funny for them. it's in the domain section at the
    foot of the prefs, right under where you can *allow* hot-linking (crazy
    person).


v0.7
    release


v1.7b

    sooo many changes and improvements I'll write this up when I get a
    chance, probably. just en-joy the features!


v1.6b

    Added user switches for a couple of things, you can now switch snippets
    on and off, description snippets on and off. You can have either, both, or
    none, whatever you like.

    Added more meta description CaSe checks.


v1.5b

    added facility to NOT search for terms, as in boolean NOT, for
    instance..

    system secure -FineCrypto -pgp

    would search for pages containing both "system" and "secure" but NOT return
    pages any containing the words "FineCrypto" or "pgp"

    it's case-insensitive, so you can do -finecrypto or -FINEcrypto, or
    whatever, and it skips that file just the same.

    while "keeping everything fast" is up there with "maintaining simplicity"
    and "ease of use", you can add as many boolean NOT's as you like to the
    query string, with a near-zero performance hit.



    added ability to only search between certain tags..

    the default is to search all content between the <html></html> tags but you
    can configure this behavior, perhaps using the <body> </body> tags, or some
    other tag of your choosing. you could even get right down and create
    <search&gt<endsearch&gt tags, it's your call.

    duplicate search terms are now removed


v1.4b

    added filename searching capability

    If the user inputs a word with a dot '.' in it, we assume it to be a
    filename and corzoogle will, as well as its usual query string search,
    perform an additional file name check, presenting its findings at the end of
    the results page.

    this consequently improved some internal logic, previously, dots '.' would
    have been filtered from the input terms, but now we can find *references* to
    real file names, linked pages, within documents, which seems a more sensible
    approach.

    only the first found file.name is actioned, further filenames are
    incorporated into the search query as regular search terms.


v1.3b

    added some user data checks

    (NEVER trust user data), filtering out some undesirables, bizarre
    punctuation, that sort of thing.

    improved scoring for titles. we score seperately for exact matches and
    simple term matches.


v1.1b

    enlarged many of the comments, which are a tad cryptic in places,
    hopefully of use to some lernerschripter.

    improved the readability of a few variables names, stuff I'd put together
    quickly, as often happens on chaotic days.

    set limit on possible score achievable by containing individual search
    terms, and also score for the different cAsE possibilities, ie.. mac MAC Mac

    added scoring for document «title»

    before.. well, it just sorta started with a <form> and went from there.. I
    have to admit, I didn't really start keeping proper notes until around
    version a1.1

    reason was, I was was developing three seperate systems independently, and
    to be quite honest it would have been too much work. by the time I finally
    settled on this present system, it was aleady fairly mature. see my blog if
    you need more details.

die (); // :debug:
back to the source menu
test

Welcome to corz.org!

I'm always messing around with the back-end.. See a bug? Wait a minute and try again. Still see a bug? Mail Me!