HOWTO: Osnove upotrebe Blosxom perl skripte

HOWTO: Osnove upotrebe Blosxom perl skripte

offline
  • Pridružio: 20 Feb 2005
  • Poruke: 4505
  • Gde živiš: planeta Zemlja

Blosxom je CGI skripta pisana u Perl-u sa ciljem da pruzi pogucnost da korisnici lako kreiraju i koriste blogove. Podrazumevana i neprosirena verzija ne nudi mnogo: RSS 2.0, kategorizaciju tekstova po godini/mesecu/danu/kategoriji i to je sve. Blosxom alat je pisan sa ciljem da bude neprestano unapredjivan pomocu korisnickih prosirenja (pluginovima i skriptama). Blosxom koji sadrzi prosirenja moze da kreira rss 1 i 2, atom opml, godinje arhive sa lepo formatiranim informacijama, moze da kreira strane koje se lako mogu menjati (kao na wikipediji recimo), moze ubaciti podrsku za vise korisnika, moze da kompresuje sav html sadrzaj putem gzip/bzip2 metoda kompresije... Mogucnosti su beskrajne! Cilj ovog teksta ce biti da vam objasni osnove blosxoma.

Evo nekih sajtova koji koriste blosxom skriptu:
http://blosxom.sourceforge.net/
http://www.antipope.org/charlie/blog-old/
http://www.e-basara.com/iztsu/blosxom.cgi
http://blosxom.ookee.com/blog/

Pre nego sto pocnemo skrenucu vam paznju na neke cinjenice:
- za ovu skriptu vam treba CGI podrska na vasem serveru. Najjednostavnije receno, CGI (common gate interface) je nacin da dobijete dinamicki kreirane strane (za razliku od html strana koje su, uglavnom, staticke). Vise informacija o podesavanju CGI-a na vasem serveru mozete naci na sledecim linkovima:
-----> Zvanicni apache howto za cgi
-----> Omogucavanje CGI podrske na IIS serverima
-----> Zanimljiv CGI Faq
- blosxom kreira staticne html strane medjutim vi mozete koristiti JavaScript, Php i ostale jezike za pisanje dinamicnih strana.
- blosxom bazu predstavljaju obicni fajlovi koji sadrze tekst (ekstenzija tih fajlova je nebitna mada je najbolje koristiti "plain" varijante poput ".txt").
- blosxom je cgi skripta sto znaci da morate nju prvo pokrenuti da bi vas sadrzaj bio ispravno prikazan.
Primer ispravne putanje: http://mojsajt.net/blosxom.cgi
Postoje mogucnosti da putanje modifikujete upotrebom "mod_rewrite" apache opcije. Vise informacija o tome mozete naci u daljem tekstu.
- blosxom skripta ima manu kada je datum tekstova u pitanju. Naime obicni tekstualni fajlovi cesto izgube datum kreiranja prilikom ftp prebacivanja na server sto znaci da imate 2 opcije:
1. Da koristite opciju u vasem ftp manageru za cuvanje datuma kreiranja dokumenta
2. Da svoje fajlove zapakujete u arhivu koja zadrzava vreme kreiranja i da tu arhivu raspakujete na serveru.

Imajte u vidu da ovo uputstvo nije namenjeno totalnim pocetnicima zato sto je ova oblast poveca i nisam u mogucnosti da objasnjavam neke trivijalne stvari no uz malo truda (citaj: uptrebe googla) svako bi mogao da razume tekst koji sledi. Hvala na razumevanju.



Instalacija
preuzimanje: http://sourceforge.net/projects/blosxom/files/
Imajte u vidu da je ovo zavnican sajt stoga vam savetujem da koristitie samo njega za download novih verzija skripte!
Instalacija je vrlo jednostavna:
1. Preuzmite poslednju verziju.
2. Raspakujte samo "blosxom.cgi" skriptu na zeljenu lokaciju
3. Gotovo. Spremni ste za rad.

Ono sto sledi jeste podesavanje te skripte.



Podesavanje skripte
Sva podesavanja vezana za sam blog se nalaze u samoj skripti. Postoje opcije da putem prosirenja vi koristite druge fajlove za podesavanje bloga ali neke stvari unutar same "blosxom.cgi" skripte moraju biti podesene.
Da bi pristupili podesavanjima neophodno je da otvorite "blosxom.cgi" skriptu u tekstualnom editoru. Linije koje vas treba da interesuju za pocetak su:
$blog_title = "My Weblog"; $blog_description = "Yet another Blosxom weblog."; $blog_language = "en"; $blog_encoding = "UTF-8"; $datadir = "/Library/WebServer/Documents/blosxom"; $url = ""; $depth = 0; $num_entries = 40; $file_extension = "txt"; $default_flavour = "html";

Sve opcije su lepo objasnjene u samoj skripti stoga ne treba da vam objasnjavam cemu koja promenjiva sluzi ali skrenucu vam paznju na sledece:
- $datadir = putanja do tekstova koje zelite da ukljucite u blosxom pretragu. Imajte u vidu da ovaj direktorijum prvo treba napraviti na serveru. Svi poddirektorijumi ce biti skenirani takodje ukoliko stavite vrednost "0". Postoji i varijanta da "blosxom.cgi" ubacite u "cgi-bin" direktorijum na vasem serveru cime olaksavate pristup samoj skripti.
- $url = opcija za zadavanje www adrese do vaseg sajta. Preporucujem da ostavite ovo polje prazno zato sto vam je neophodno dodatno podesavanje za $datadir (morate znati sta da podesite) ukoliko ovo budete menjali tj. ako stavite bilo koju vrednost za ovu promenljivu.

Takodje imajte u vidu i to da ako napisete tekst bez ekstenzije, koju ste vi postavili u $file_extension, isti nece biti ukljucen u blosxom pretragu tj. necete moci da mu pristupite preko blosxom.cgi skripte!
Podesavanjem ovih promenljivih vi dobijate blog. Sve sto dalje treba uraditi jeste ostavljanje baze tekstova i odlazak na vas sajt.



Prvo pokretanje skripte
Preko web pregledaca idite na vas sajt/web server gde se skripta nalazi. Obavezno ukljucite samu skriptu u putanju za adrese. Evo primera:
http://localhost.rs/test/blosxom.cgi
Naravno postoji i varijanta da napravite "index.html" ili "index.php" fajl, koji ce zapravo biti glavna strana sajta, i da u taj fajl ubacite opciju za automatsko preusmeravanje na "blosxom.cgi" skriptu. U kratkim crtama treba vam sledeci kod (posle <body> taga):
<meta http-equiv="refresh" content="1; url=blosxom.cgi">
Broj "1" je zapravo vreme posle kojeg ce poceti preusmeravanje na "blosxom.cgi" skriptu.

Ono sto mozete videti, nakon otvaranja "blosxom.cgi" skripte na serveru jesu ime vaseg sajta i nista vise. Sada je vreme da dodate tekstove na vasu stranu. Dignite na web server par tekstova i to u direktorijum koji ste odredili u $datadir promeljivoj. Dakle ako pise:
$datadir = "/blog/tekstovi/" ;
onda prebacite par tekstova u "blog/tekstovi" direktorijum na vasem serveru. Obratite paznju na to da je neophodno da koristite ispravne ekstenzije koje podesavate promenom $file_extension promenljive. Dakle, ako ste napisali
$file_extension = "txt" ;
u vasoj "blosxom.cgi" skripti onda svaki tekst koji zelite da prikazete mora imati ekstenziju txt.
Kada ubacite bilo koji tekst onda mozete da ponovo ucitate skriptu. Na prvoj strani bi trebalo da dobijete listu tekstova koje ste uneli.

!! Paznja: Blosxom sortira tekstove po vremenu poslednje modifikacije sadrzaja! Dakle ako ste napisali tekst (recimo) 21.12.2009 onda ce taj tekst biti prikazan na serveru u bazi za taj dan. Ako promenite taj tekst 22.12.2009 on ce biti ubacen u arhivu za 22.12.2009 zato sto posle izmene samog teksta taj datum izmene postaje datum poslednje izmene (logicno zar ne?).



Html stilovi (flavours)
Ono sto je zanimljivo kod blosxoma jesu "flavours" html stilovi. Oni vam omogucavaju da redizajnirate sajt kako zelite da imate vise varijanti istog.
Primer: html stil "frejmovi" mozete koristiti za verziju sajta koja koristi frejmove dok "blog" i "permalinkovi" mozete koristiti za kreiranje strana za blog.
Blosxom flavour (u daljem tekstu html stil) je zapravo html kod kojim mozete odrediti izgled vase strane. Da bi uspesno definisali svoj html stil neophodno je da kreirate sledece fajlove:
- head.$flejvor
- date.$flejvor
- story.$flejvor
- fotter.$flejvor
gde je $flejvor ime vaseg html stila.
Primer: ako imate html stil "tekst" onda ce se vasi fajlovi zvati "head.tekst", "story.tekst"... I tako za svaki html stil. Broj html stilova koji se koriste je neogranicen pa pustite masti na volju.
Ne zaboravite da podesite podrazumevani html stil preko $default_flavour promenljive unutar "blosxom.cgi" skripte. Sta dobijate ovim podesavanjem? Objasnicu preko primera:
Vasa adresa moze biti "http://mojsajt.net/blog/blosxom.cgi". Kada pokrenete blosxom.cgi skriptu direktno onda ce automatski biti ucitan podrazumevani html stil koji ste vi podesili unutar same skripte.
Blosxom dolazi sa podrazumevanim "html" stilom ali vi to mozete promeniti. Ako vam se ne dopada samo koristite drugi html stil.

Html stilove mozete "pozivati" na 2 nacina:
1. Koriscenjem "?flav=" sufiksa. Recimo da imate html stil koji se zove "frejmovi". Ako zelite vi taj stil mozete pozvati na sledeci nacin:
Citat:http://mojsajt.net/blog/blosxom.cgi?flav=frejmovi
Izgleda lepo i dinamicno zar ne?

2. Koriscenjem html stila kao ekstenziju strane. Recimo da imate (opet) stil "frejmovi" i zelite da ga pozovete:
Citat:html://mojsajt.net/blog/blosxom.cgi/index.frejmovi
Primecujete razliku zar ne?

Skrecem vam paznju na promenljive koje mozete koristiti u blosxom html stilovima:
http://blosxom.sourceforge.net/documentation/users/flavour.html

Lista je dugacka pa ne bih da radim copy-paste. Suvise promenljivih ima po defaultu a da ne pominjem koliko se taj broj uvecava upotrebom dodataka za blosxom.



Upotreba linkova
Verovatno se pitate o cemu bi mogli da pricamo u ovoj sekciji. Vidite, blosxom ima vise varijanti sortiranja linkova. Mozete sortirati linkove prema datumima ili prema kategoriji. Evo primera:
http://mojsajt.net/blog/blosxom.cgi/2009/21/12/
Ovakva adresa ce sortirati tekstove prema datumu. Postoji varijanta i da koristite samo godinu ili dan. Evo jos nekih zaniljivih ideja:
http://mojsajt.net/blog/blosxom.cgi/putovanja?flav=permalinkovi ili http://mojsajt.net/blog/blosxom.cgi/putovanja.permalinkovi
pokazace tekstove iz "putovanja" kategorije kroz "permalinkovi" html stil.

http://mojsajt.net/blog/blosxom.cgi/putovanja?flav=permalinkovi/2009/
pokazace tekstove iz "putovanja" kategorije kroz "permalinkovi" stil ali samo za 2009 godinu (dakle samo tekstove koji su napisani tada).

Postoji jos jedan trik kod linkova:
http://mojsajt.net/blog/blosxom.cgi/djura/putovanja?flav=permalinkovi/2009/
pokazace tekstove iz "putovanja" kategorije kroz "permalinkovi" stil, za 2009 godinu (dakle samo tekstove koji su napisani tada) od autora pod nickom "djura".

I najbitniji trik ide za kraj:
http://mojsajt.net/blog/blosxom.cgi/putovanja/irak.tekst
pokazace jedinstven tekst "Irak" iz "putovanja" kategorije kroz "tekst" stil.
Jos bolji primer je sa upotrebom "html" html stila cime ce vam biti mnogo jasnije sta sam hteo reci:
http://mojsajt.net/blog/blosxom.cgi/putovanja/irak.html
Primecujete da sa ovim trikom mozete lako kreirati stalne linkove (en: permalinks).



Prosirenja
Blosxom ima jako zanimljivu kolekciju dodataka. Dodacu su pisani u Perl-u i ima ih na netu u velikom broju ali su "razbacani".Pre nego sto ostavim linkove do istih objasnicu kako rade prosirenja na blosxomu.
Unutar "blosxom.cgi" skripte je neophodno podesiti $plugin_dir tj. direktorijum koji sadrzi prosirenja (najbolje je koristiti $datadir/plugins mada mozete koristiti sta god vi pozelite). Takodje je neophodno podesiti $plugin_state_dir u kome se cuvaju podaci o prosirenjima i neke informacije koje ta prosirenja kreiraju prilikom upotrebe istih.

Vecina prosirenja sadrzi svoje promenljive tako da je neophodno da proverite svako prosirenje pre upotrebe kako bi znali o cemu se radi i kako ukljuciti efekte istog unutar html strana.
Evo jednog primera:
"archives.pl" je skripta koja sluzi za kreiranje (lepo formatiranih) arhiva. Da bi videli efekte te skripte i da bi koristi istu neophodno je da dodate $blosxom::archives u sam html kod ( i to tako kako pise tj, $blosxom::archives). Skrecem vam paznju na to da se ove promenljive dodaju u html stilove (flavours) a ne u same tekstove koje korisnik pise!

I to je to. Samo smestite zeljene skripte u direktorijum koji ste definisali u $plugin_dir i ubacite promeljive same skripte u html stil.
!! Paznja: Neke skripte su "pasivne" tj. ne zahtevaju od vas nikakvo dodavanje promenljivih. Najbolji nacin da ovo proverite jeste iscitavanje svake skripte kako bi znali cemu sluzi (uglavnom je objasnjeno u samoj skritpi).

Opet cu vam skrenuti paznju na neke sajtove na kojima mozete nacin prosirenja za blosxom:
- http://blosxom.ookee.com/blog/plugins/registry/v2/listing.html
- http://github.com/hail2u/blosxom-plugins
- http://brutalhugs.com/flavours/
- http://www.pipetree.com/qmacro/blog/tag/blosxom/

Prilikom koriscenja blosxom skripte, autor ovog teksta je sakupio sve ove pluginove na jedno mesto pa mozete i to da skinete i proverite sta sve ima tamo:
link1: https://www.mycity.rs/must-login.png
link2: http://www.lab21.net/pub/softver/perl/blosxom-extras-13112009.tar.bz2
trenutan broj skripti u ovoj arhivi je 59



Ostale stvari na koje mozete obratiti paznju
Blosxom sajtove mozete unaprediti nekim tehnikama i to prvenstveno mislim na menjanje strukture samih linkova. Ova operacija se svodi na to da koristite "mod_rewrite" opciju koju nudi apache webserver. Evo o cemu se radi:

Linkovi poput
http://mojsajt.net/blog/blosxom.cgi?flav=permalinks
mogu lako da postanu
http://mojsajt.net/blosxom/flav/permalinks/

to se postize upotrebom "mod_rewrite"-a o kome se mozete informisati na sledecoj adresi:
http://httpd.apache.org/docs/mod/mod_rewrite.html

Postoji jedan online alat za pravljenje ovih pravila pa mozete i tu da probate:
http://www.webmaster-toolkit.com/mod_rewrite-rewriterule-generator.shtml (*)
* zahvaljujem kolegi bocketu na linkovima i ideji


Toliko od autora ovog teksta za danas Smile



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
Ko je trenutno na forumu
 

Ukupno su 753 korisnika na forumu :: 13 registrovanih, 1 sakriven i 739 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: Battlehammer, branko7, Dorcolac, KUZMAR, nenad81, Neutral-M, Parker, SD izvidjac, shaja1, Srle993, suton, TBF1D, šumar bk2