O FP počitadle

Aneb jak zhruba funguje fpcount.exe v FP 98. Minule jsem se rozepsal o FP Editoru a tam jsem to pohaněl.

V čem je problém

Většina webových autorů má dnes ve zvyku dávat do svých stránek počitadlo přístupů. Mnoho z nich pracuje v programu Micro$oft FrontPage a tam je vložení počitadla jednoduchý příkaz. Naneštěstí toto počitadlo zhusta nefunguje správně. Nejčastěji je to tím, že autor web publikuje jiným způsobem, než jak si to usmyslel strýček Bill. Nebudu se zabývat tím, jak má ono publikování vypadat, ale raději popíšu, jak se ono počitadlo chová, abyste si to mohli upravit. Snad řeknu jen tolik, že při "správném" publikování by se všechno mělo nastavit tak, jak má (totiž tak, jak se to potom stejně musí ručně opravit).

Záhadný "webbot"

Když jsem do stránky v FP Editoru zkusil vložit počitadlo, do stránky se vložilo, a ve zdroji se objevila poznámka se záhadným slovem webbot na začátku, totiž nějak takhle: <!--webbot ... -->, kde místo tří teček byly nějaké parametry. Taková věc by se na stránce normálně nezobrazila (je to <!-- poznámka -->), ale při ukládání jí editor nahrazuje něčím jiným.

Zcela jinak zdroj stránky vypadá, pokud projde publikováním (příkaz Publish v FP Exploreru). Pak se tam ty poznámky <!--webbot objevují dvě. Ale mezi nimi je obrázek, který už se zobrazí.

Parametry obrázku

Zdroj obrázku počitadla vypadá nějak takhle:
<img src="_vti_bin/fpcount.exe/jmeno_webu/?Page=jmeno_stranky.htm|Image=1" >
Lidsky řečeno: tag img si pro svoji podobu zavolá program fpcount.exe, který vygeneruje obrázek. Jako parametry se programu předává to, co je za otazníkem, totiž jméno stránky s počitadlem a druh obrázku (Image=1 až 4).

Jaké to používá soubory

Soubor fpcount.exe je umístěný v adresáři _vti_bin .

Program fpcount.exe je tzv. FrontPage componenta, která se musí napřed nainstalovat na server. Nevím to jistě, ale je možné, že stačí tento program jenom zkopírovat do adresáře _vti_bin. Na většině serverů již dnes tato komponenta je nainstalovaná, minimálně na všech Micro$oftích serverech. Nejsem si jistý, zda program fpcount.exe funguje na ne-Windowsovských serverech (Unixových), tam se asi musí instalovat složitěji.

Poloha souborů s počty přístupů je tvrdší oříšek. Překvapivě je program fpcount nepotřebuje jako parametr, ale prostě ví, kde jsou. Vyskytují se v adresáři _private, který musí být vedle onoho _vti_bin. Tam potom mají soubory jméno jmeno_stranky.htm.cnt (ano, opravdu jsou tam jakoby dvě přípony, ale platí jen to cnt). Fpcount si napoprvé prostě vytvoří soubor a pojmenuje ho stejně jako soubor stránky, na které počitadlo je a za jméno přidá ".cnt". Takový soubor obsahuje jediné číslo, vyjadřující počet přístupů (mimochodem, přepsáním tohoto souboru si můžete "nabrnkat" tisíce hitů). Pokud máte stránku s počitadlem uloženou v nějakém hlubším adresáři, FrontPage Explorer vytvoří v adresáři _private paralelní adresářovou strukturu (od pohledu Microsoftí přístup).

Nemusím asi zdůrazňovat, že takto složitá věc se nějak zkazí velmi snadno, takže není divu, jak často to nefunguje.

Jak se to dá pozměňovat

Pokud se smíříte s tím, že počitadlo nebudete zadávat pohodlně jako příkaz FP z menu, ale jako kus HTML kódu, budete slavit úspěchy. Pak už jenom stačí pohrabat se v souborech a udržet v tom pořádek. Jak už jsem popsal, vypadá očištěné počitadlo po řádném publikování takto:

<img src="_vti_bin/fpcount.exe/jmeno_webu/?Page=jmeno_stranky.htm|Image=1" >

Můžete si jej změnit takto:

<img src="_vti_bin/jmeno_programu.exe/?Page=cokoliv|Image=1" >

Program fpcount.exe může být i jinde, než ve _vti_bin, ale pouze v nějakém adresáři, ve kterém jsou dovoleny programy (např. cgi-bin). Takže je nejlepší nechat jej tam, kde je. Chcete-li jej přejmenovat na jmeno_programu (a pak jej odkazovat s novým jménem), lze to, ale pak neumí inicializovat soubor cnt, do kterého si dává ty počty. (Napoprvé se to tedy musí udělat ručně.)

Jmeno_webu se nemusí zadávat. Nevím, proč jej tam FP dává. Patrně je to úchylka. Mám nějaké teorie, ale nejsou ověřené.

Je zřejmé, že si můžete jako parametr Page zadat cokoliv, ale mělo by to být jednoznačné, aby si dvě různé stránky nepočítaly spolu. Počet přístupů se pak ukládá do souboru cokoliv.cnt, který bude v adresáři _private.

Parametr u Image by měl být tuším od nuly do čtyř, tím se určí styl počitadla. Fpcount je v tom, žel, dost omezený. Zřejmě se dá zadat vlastní styl číslic, to ale já zatím neumím.

Pozor, je to case-senzitivní, to znamená, že Page a Image musí být s velkými.

Závěr

Mít soubory s počty přístupů v debilním adresáři _private je na pěst. Při uploadování běžně zapomínám tento soubor nepřemazávat. Proto já FP počitadlo nepoužívám, mám všude veřejné počitadlo.

Post Scriptum

Pinkneťácké počitadlo v létě 1999 nadobro spadlo. Sice tam slibují, že to zase rozběhnou (a lépe), ale kdo jim věří, nechť čeká. Takže jsem si zvolil jiné veřené počitadlo ze serveru http://eldar.cz/pixacky. Oproti Pinknetu má dvě výhody a jednu nevýhodu. Zaprvé počítá ke každé IP adresy jen jeden přístup denně (někdo v tom vidí nevýhodu, protože to pak roste pomaleji a protože sítě s proxinou mají jen jednu IP adresu), takže se to nedá nabrnkávat. Zadruhé jednou za n přístupů mi pošle mail se seznamem IP adres a datumem přístupu (n se dá nastavit). Analyzuji si to v excelu a vím, kdo mě kdy čte. Nevýhodou je, že takové počitadlo se musí na té adrese napřed zaevidovat. (pocitadlo.Pinknet spadlo možná proto, že se to evidovat nemuselo)

 

Reklama

www.webhosting-c4.cz, extra rychlý SSD webhosting s doménou v ceně
o tvorbě, údržbě a zlepšování internetových stránek

Návody HTML CSS JavaScript Články Ostatní
Encyklopedie FrontPage Reklama PHP Server

Jak psát web píše Yuhů, Dušan Janovský. Kontakt.