Statične in dinamične spletne strani. Statične in dinamične spletne strani. Razvoj modela baze podatkov

Neposredna indeksirana povezava do spletnega mesta- to je povezava, ki je ne blokirajo prepovedovalci oznake HTML in/ali atributi, pa tudi brez kakršnih koli preusmeritev (preusmeritev). Na primer, če se odločite, da boste na svoje spletno mesto/blog postavili povezavo do moje strani, je priporočljivo, da je ne skrijete pred iskalnimi roboti s prepovedujočim atributom nofollow. Če se odločite za povezavo do ene od mojih strani, odprite povezavo za indeksiranje. Hvaležen bi bil za neposredne indeksirane povezave do moje strani.
Če na svojem spletnem mestu/blogu uporabljate grafično/besedilno vsebino ali kateri koli delček/citat, izposojen s tega mesta, mora biti povezava do spletnega mesta brez kakršnih koli prepovedujočih atributov in/ali preusmeritev.

Kaj je TFP in FTP, kakšna je razlika?

Okrajšavi TFP in FTP nimata nič skupnega. Edina stvar, ki jih združuje, je sozvočje izgovorjave, ki lahko koga zmede.
TFP - (čas za tiskanje), prevedeno kot »čas na izpis«. Ta izraz uporabljajo fotografi in manekenke. TFP je nekakšna valuta, ki jo uporabljajo predstavniki foto industrije. TFP je praviloma zavarovan z dogovorom med modelom in fotografom, da se izognemo vsem vrstam težav v zvezi z avtorskimi pravicami itd.
Ko model pristane na TFP, to pomeni, da je pripravljena določen čas delati brezplačno, za delo pa prejme svoje fotografije (vse ali nekatere, z obdelavo ali brez).
Zdaj o FTP.
FTP (protokol za prenos datotek) je protokol za prenos datotek, ki ga uporabljajo spletni razvijalci in drugi. Za delo s strežnikom prek tega protokola uporabite odjemalec FTP je program, ki deluje neposredno s FTP strežnikom.
Protokol FTP se uporablja za prenos omrežnih dokumentov, kot so HTML, PHP, CSS, JPEG itd., iz zasebne naprave razvijalca na gostiteljski strežnik. Isti protokol se uporablja za prenos omrežnih dokumentov s strežnika v zasebno napravo razvijalca.

Kaj je pripona datoteke?

Končnica datoteke, oziroma pripona imena datoteke je zaporedje določenih znakov, dodanih imenu datoteke. Ti znaki so namenjeni identifikaciji vrste ali, kot pravijo, formata datoteke. Končnica imena datoteke ni nič drugega kot kombinacija črk in/ali številk, ki se nahaja za zadnjo piko v imenu datoteke, na primer fotograf.gif, kjer je »fotograf« ime datoteke in ».gif« njena končnica . Obstaja ogromno končnic datotek, vendar vse ustrezajo določenim standardom in področjem uporabe. Če pa si želite za neko datoteko izmisliti svojo izvirno razširitev, na primer ime_datoteke.fotograf, prosim, ni problema! Toda Windows OS ne bo mogel odpreti takšne datoteke, če na vašem računalniku ni ustreznega programa, ki vidi to razširitev. Na primer, če želite v operacijskem sistemu Windows odpreti datoteko s pripono .gif, ta OS ve za to pripono in bo odprl neko sliko. Če pa želite odpreti datoteko s končnico .fotograf, se taka datoteka ne bo odprla, saj OS Windows take končnice ne pozna. Datoteko s to pripono lahko odprete v aplikaciji, ki podpira to pripono.

Kaj je spletno mesto vizitke, kaj obstaja?

Spletna stran vizitke je spletna stran, katere glavni namen je javnosti predstaviti informacije o podjetju ali posamezniku. Takšno spletno mesto je običajno sestavljeno iz majhnega števila statičnih ali dinamičnih strani.
Spletne strani vizitk morajo vsebovati osnovne podatke o podjetju/posamezniku, blagu, ki ga proizvaja in o njegovih storitvah. To so lahko strani s ceniki, kontaktnimi podatki in seveda obrazcem povratne informacije. Spletna stran fotografske vizitke se od drugih podobnih strani praviloma razlikuje po izvrstnem dizajnu in številčnosti fotografij. Spletna stran fotografa mora vsebovati njegov portfolio in kontakte. IN Zadnje čase Vse pogosteje lahko zasledite spletno stran vizitke, katere nekatere strani so zgrajene na tehnologiji FLASH ali v celoti na FLASH.
strani FLASH videti dobro, vendar iskalniki trenutno indeksirajo takšna spletna mesta zelo slabo ali pa jih sploh ne indeksirajo.

Kaj je dinamična spletna stran/spletno mesto?

Dinamična spletna stran- to je stran, na kateri lahko vsebino ali njen del sproti generiramo (spreminjamo) brez dodatnih telesnih gibov. Za dinamično povezane strani se uporablja tako imenovani motor - CMS (sistem za upravljanje vsebin).
Kako deluje? Na primer stran, na kateri vidite ta trenutek v oknu brskalnika v tej obliki ne obstaja. Sestavljen je iz ločenih delov (templates), ki jih strežnik sestavi v eno celoto. Se pravi, ko je stran zahtevana, spletni strežnik zahtevo obdela in takoj “na letenju” iz posameznih delov sestavi spletno stran in nam jo pošlje na ogled v brskalniku. Spremeni se le vsebina strani, predloga strani pa ostane nespremenjena.
Predstavljajte si omaro, ki ima več polic s različne stvari. Na eni polici je besedilna vsebina (baza podatkov), na drugi - grafične datoteke(fotografije, elementi grafičnega oblikovanja), na tretjem - skripte (na primer PHP skripte), na četrtem - slogi CSS in tako naprej ... To pomeni, da ko strežnik prejme zahtevo za to ali ono vsebino, ve, kje je kaj, in nam hitro sestavi stran iz potrebnih delov: potrebno besedilno vsebino vzame iz baze, potrebne grafične datoteke iz grafične police itd. Če spremenite del predloge na enem mestu, se te spremembe uporabijo za vse strani spletnega mesta.

Kaj je statična spletna stran/spletno mesto?

Statična spletna stran je spletni dokument, ki se nahaja na strežniku v obliki, kot jo uporabnik vidi v svojem brskalniku. To pomeni, da tak dokument ni sestavljen iz ločenih delov (predlog), ampak leži na strežniku tak, kot je, v sestavljeni obliki in se s strežnika prenese kot ena datoteka s povezavami do njega. slogi CSS in/ali skripte.
Če želite spremeniti vsebino takega dokumenta, ga morate najprej urediti na službenem računalniku v kakšnem urejevalniku HTML in ga nato znova naložiti na strežnik. Če želite spremeniti del dizajna ali na primer dodati/odstraniti element navigacijskega menija, boste morali spremeniti (spremeniti) vse strani spletnega mesta.

Spletni oblikovalec in spletni programer, kakšna je razlika?

Spletni oblikovalec in spletni programer delujeta na istem področju, vendar opravljata različni nalogi. Spletni oblikovalec je vključen v izdelavo prototipov zasnove strani, razvoj predloge za oblikovanje spletnega mesta, ustvarjanje postavitve grafičnega oblikovanja, njegovo razrezovanje na ločene fragmente in optimizacijo, izbiro pisav in barv. Spletni oblikovalec lahko naredi postavitev spletnih strani, vendar to ni njegova pristojnost, za to so na voljo posebej usposobljeni ljudje - oblikovalci postavitev.
Kdo je spletni programer?
Spletni programer ali bolje rečeno spletni razvijalec (razvijalec strežnikov) je oseba, ki razvija posebne spletne aplikacije, piše skripte v različnih programskih jezikih za določene module spletnih strani.
Zaključek, da je spletna stran lepa in funkcionalna sta potrebna tako spletni oblikovalec kot spletni programer. In da bi bilo spletno mesto uporabniku prijazno, potrebuje

Promocijo spletne strani (promocijo) razumemo kot premik spletne strani na vrh rezultatov iskanja za določene ključne besede v iskalnikih. Googlovi sistemi, Yandex itd.
Najboljši rezultati iskanja- to je prva stran spletnega mesta iskalnik s prvimi 10 povezavami do spletnih mest. Za teh 10 mest poteka nepomirljiv boj med spletnimi mesti iste teme. Po statističnih podatkih tista spletna mesta, ki so na vrhu (zasedajo prva tri mesta), zberejo največje število obiskovalcev. Da bi bili na tem vrhu, nekateri viri plačajo ogromne količine denarja. Vendar ni dovolj, da prideš tja, tam moraš ostati, kar vodi v stalen boj ne le med velikimi SEO podjetji, ampak tudi med zasebnimi

statične strani so natančna kopija datotek, ki se nahajajo v imenikih spletnega strežnika in se ne spremenijo, dokler razvijalec sam ne spremeni nekaj v njih. Strani pa je mogoče generirati dinamično, to je med obdelavo zahteve z uporabo nekega programa, in ne iz že pripravljene datoteke na disku. Takšno stran lahko ustvarite na več načinov:

generiranje na zahtevo neposredno na spletnem strežniku. Za uveljavitev možnosti dinamičnega generiranja spletnih strani je potrebno strežniku ukazati, katere datoteke so »navadne« in katere vsebujejo navodila za njihovo programsko obdelavo. Tako se vse datoteke v ustreznem imeniku spletnega mesta, ki imajo na seznamu pravic dostopa »izvedi«, štejejo za dinamične, strežnik pa sam izbere način za generiranje določene strani pri dostopu do take datoteke na podlagi njenega atributa in/ ali njegovo razširitev imena. V tem primeru lahko stran ustvari strežnik sam (s posebnimi ukazi) ali zunanji program, ki se zažene neposredno ali prek vmesnika CGI (vmesnik skupnega prehoda). Program za generiranje dinamične strani je lahko napisan v prevedenem ali interpretiranem jeziku. Besedilo programa, ki vsebuje ukaze za dinamično generiranje strani, se imenuje skript. Seznam ujemanja med atributi skripta in zunanjimi programi za njihovo obdelavo je določen v razdelku Spletni strežnik/Procesorji skripta. Na primer, skripte s končnicami *.pl in *.cgi privzeto obdela tolmač Perl;

oblikovanje na uporabnikovem računalniku. V tem primeru se besedila programov za ustvarjanje dinamičnih spletnih strani najprej prenesejo na lokalni računalnik uporabnika, kjer mora brskalnik poklicati ustrezno orodje za obdelavo in sprejem spletne strani. Program za generiranje dinamične strani je lahko napisan tudi v prevedenem ali interpretiranem jeziku.

    1. cgi tehnologija

Verjetno ste že kdaj naleteli na strani, ki jih prej ni bilo in so bile ustvarjene dinamično na vašo željo – generirane, kot pravijo, »na mah«.

Na primer, katera koli knjiga z ocenami vam ponuja poseben obrazec, v katerega dodate svojo oceno, nato pa naslednjič, ko odprete to stran, bo vsebovala novo sporočilo.

Ena tehnologija, ki omogoča dodajanje dinamične vsebine spletnim stranem, se imenuje CGI. Omogoča vam, da z določenim URL-jem povežete ne samo statični dokument, ampak program, zaradi česar se lahko podatki generirajo v realnem času.

Poglejmo primer zagotavljanja vremenskih informacij. Vremensko poročilo se spreminja vsak dan in vsak dan se lahko ustvari nova stran s statično napovedjo. Če pa želite zagotoviti takojšnje podatke, morate vsakič ustvariti novo stran. To je mogoče izvesti s tehnologijo CGI. V trenutku vzpostavitve stika s strežnikom se na njem zažene program CGI, ki dostopa do digitalne merilne naprave in posreduje informacije o temperaturi, tlaku itd. Ko se naslednjič obrnete na ta naslov, boste prejeli nove informacije.

Drug primer: ko izpolnite povpraševanje, na primer povpraševanje v iskalniku, v odgovor prejmete rezultate programa CGI v obliki nabora iskanih naslovov.

Program CGI si lahko predstavljamo kot del spletnega strežnika, ki ga spletni strežnik izvaja v realnem času. Strežnik posreduje uporabnikove zahteve CGI programu, ki jih obdela in vrne rezultate svojega dela na uporabnikov zaslon (slika 3). Na večini spletnih strežnikov je mehanizem CGI organiziran takole: ustvari se poseben podimenik, v katerem so shranjeni tovrstni programi, skrbnik spletnega strežnika pa konfigurira dostop do njega tako, da se datoteke iz njega ne berejo, ampak zaženejo za izvedba. Rezultat programa se pošlje brskalniku kot odgovor na zahtevo. Z vidika naročnika ni pomembno, ali je dani URL statični dokument ali program CGI. Brskalnik informacije zaznava na enak način, ne glede na to, ali se generirajo sproti ali gre za statično stran. Izhod programa CGI ima enako obliko kot statični dokument.

Verjetno ste med potovanjem v brskalniku naleteli na kratico CGI Svetovni splet, in verjetno ste videli povezavo do /cgi-bin/ - imenika, v katerem se običajno nahajajo programi cgi. Številne interaktivne storitve, kot so knjiga gostov, forum itd., so zgrajene posebej na programih CGI.

Izraz "CGI" se ne nanaša le na program, ampak tudi na protokol. V tem smislu je CGI standardni način, da spletni strežnik posreduje zahtevo uporabnika aplikacijskemu programu in prejme podatke nazaj, da jih posreduje uporabniku. Protokol CGI za pošiljanje podatkov med strežnikom in aplikacijo je del protokola HTTP.

Upoštevati je treba, da če boste svojo stran gostili na brezplačnih strežnikih za gostovanje, je povsem možno, da skripti CGI na teh strežnikih niso podprti.

Alternativa CGI je Microsoftova tehnologija Active Server Page (ASP), ki je zgrajena na istem principu: skript, vključen v spletno stran, se izvede na strežniku, preden je stran poslana uporabniku.

Obstajajo še druge tehnologije, ki delujejo po istem principu.

Kot je razvidno iz sl. 3, Program CGI deluje na strani strežnika.

Slika 3.

Možno pa je urediti tudi dinamične strani s prenosom programov na odjemalski računalnik, ki generirajo dinamično vsebino strani na odjemalski strani (slika 4).

riž. 4

Ta tehnologija je implementirana na naslednji način: aktivni dokumenti so shranjeni na spletnih strežnikih in preneseni na lokalni računalnik na enak način kot statične strani, vendar potem, ko je program za aktivne dokumente na lokalnem računalniku, se zažene in izvede določene izračune na uporabnikovem računalniku. , ki temelji na lokalnih računalniških virih. In rezultati teh izračunov so že prikazani na zaslonu. Skladno s tem hitrost prikaza podatkov na zaslonu ni odvisna od hitrosti komunikacije z oddaljenim strežnikom, saj se izhod aktivnega dokumenta pojavi šele, ko je bil prenesen v lokalni računalnik. Za ustvarjanje aktivnih dokumentov je mogoče uporabiti različne tehnologije: aplikacije, napisane v JavaScriptu, programčke Java in kontrolnike ActiveX.

Delajte dan za dnem, da posodobite vsebino vašega spletnega mesta in ga nasičite zanimivih materialov, verjetno mislite, da se vsak dan ustvari na stotine novih spletnih mest in vsak dan doda na stotine novih dokumentov. Kako so ustvarjeni vsi ti novi nizi strani in kako se tako hitro posodabljajo? Vse to ni tako težko, kot se zdi na prvi pogled, saj uporablja koncept dinamičnih spletnih strani.

V tem članku si bomo ogledali korake ustvarjanja mehanizma za objavo sporočil za javnost na spletnem mestu. Naše spletno mesto bo sproti povezovalo sporočila za javnost, shranjena v bazi podatkov, s predlogami spletnih strani. Naš cilj ni bil seznaniti bralce z osnovami orodij za razvoj spletnih strani, saj je bilo o tem napisanih veliko knjig in člankov. Ta članek je namenjen predvsem tistim uporabnikom, ki že imajo izkušnje z ustvarjanjem spletnih strani in preprostih mest. Naš glavni cilj je pokazati vam, kako začeti razvijati svojo prvo dinamično spletno stran. Za razumevanje članka je priporočljivo imeti osnovno znanje o arhitekturah informacijskih sistemov, hiperbesedilnem označevalnem jeziku (HTML) in programskem jeziku Perl. Za izdelavo te strani bomo uporabili tri zmogljive odprtokodne tehnologije: Apache, MySQL in Perl/DBI.

Kaj je statična spletna stran?

Preden se podate v razvoj dinamičnega spletnega mesta, je pomembno razumeti, kaj je statično spletno mesto in statične spletne strani, ki sestavljajo njegovo jedro. Statične spletne strani se ustvarijo ročno, nato shranijo in naložijo na spletno mesto. Kadarkoli je treba spremeniti vsebino takšne strani, jo uporabnik spremeni na svojem službenem računalniku, običajno z urejevalnikom HTML, jo shrani in nato ponovno naloži na spletno mesto. Če natančno pogledate kakšen portal, recimo CNN.com ali BBC.co.uk, boste morda pomislili, da ta podjetja pritegnejo vojsko oblikovalcev postavitev, da posodobijo vsebino svojih spletnih mest. Pravzaprav obstaja Najboljši način- uporaba koncepta dinamične spletne strani.

Kaj je dinamično spletno mesto?

Vsaka upodobljena stran dinamičnih spletnih mest temelji na predlogi strani, v katero je vstavljena nenehno spreminjajoča se vsebina, ki je običajno shranjena v bazi podatkov. Ko uporabnik zahteva stran, se ustrezni podatki pridobijo iz baze podatkov, vstavijo v predlogo, da se oblikuje nova spletna stran, in jih spletni strežnik pošlje uporabnikovemu brskalniku, ki jih pravilno prikaže. Poleg informacijske vsebine je mogoče dinamično izdelati tudi navigacijske elemente za spletno mesto. Na ta način, če morate posodobiti vsebino svojega spletnega mesta, preprosto dodate besedilo za novo stran, ki se nato vstavi v zbirko podatkov s posebnim mehanizmom. Posledično se zdi, da se spletno mesto samo posodablja.

Ustvarjanje dinamične strani

Prva stvar, ki jo potrebujete za ustvarjanje dinamičnega spletnega mesta, je spletni strežnik, kot je Apache.

Spletni strežnik se lahko uporablja za oskrbo elektronske trgovine, novičarskega strežnika, iskalnika, sistema učenje na daljavo in celo za celoten nabor navedenih področij. Izbira spletnega strežnika je odvisna od tega, s kakšno dejavnostjo se namerava posameznik ali organizacija ukvarjati na internetu.

Nekaj ​​strateških poslovnih odločitev je tako pomembnih kot izbira platforme spletnega strežnika. Lastnosti strežnika so izjemno pomemben dejavnik, ki določa zanesljivost vozlišča, njegovo "odzivnost". zahteve strank, pa tudi, kaj je treba storiti, da ga vzdržujemo v delovnem stanju. pri narediti pravo izbiro komponent in kakovosten projekt, lahko spletno mesto postane nov, bolj priročen način za interakcijo strank in partnerjev z vašim podjetjem. Preobremenitev spletnega strežnika lahko povzroči, da strežnik baze podatkov ali kakšen drug vir postane nedosegljiv odjemalcem.

Velika podjetja so se do nedavnega zanašala na Microsoft Internet Information Server, Netscape FastTrack, IBM WebSphere, Apache pa so uporabljala predvsem majhna podjetja. Vendar se je zdaj situacija nekoliko spremenila in Apache začenja podpirati delovanje nekaterih velikih internetnih projektov, zlasti Yahooja.

Celotno različico članka najdete na našem CD-ROM-u.

Apache ponuja bogate funkcije, ki vam omogočajo, da svoj spletni strežnik prilagodite potrebam posameznih in poslovnih uporabnikov. Nastavitve se izvajajo z uporabo navodil v konfiguracijske datoteke. Apache vam omogoča ustvarjanje virtualnih spletnih mest in deluje tudi kot proxy strežnik. Če morate omogočiti dostop samo do vsebine strežnika omejen krog posameznikom lahko spletni strežnik konfiguriramo tako, da strežnik ob dostopu do določenih imenikov preveri prijavna imena in gesla v lastni bazi podatkov ali v eni od podatkovnih baz, povezanih z njim.

Nato se morate odločiti, kako boste shranjevali vsebino, ki je prikazana na spletni strani. V tem članku bomo na konkretnem primeru pokazali, kako ustvariti bazo podatkov v MySQL DBMS, ki nam bo omogočil razdelitev spletne vsebine v tabele, ki vsebujejo polja in zapise podatkov. Polje je diskretna enota podatkov v tabeli. Ustvarimo lahko na primer tabelo tbl_news_items s polji col_title, col_date, col_fullstory, col_author. MySQL DBMS je zaradi enostavne uporabe in administracije, brezplačne distribucije za različne platforme, vključno z Linuxom in Windows, ter hitro rastoče priljubljenosti odlična izbira za ustvarjanje takšne baze podatkov.

Po tem bomo ustvarili dinamične strani s predlogo HTML. Za razvoj aplikacij za interakcijo z bazo podatkov in predlogami bomo uporabljali jezik Perl.

Pravzaprav moramo ustvariti tri Perl programe oziroma skripte: ena bo prikazala povezave do vseh razpoložljivih sporočil za javnost (pr-list-dbi.pl), druga pa bo prikazala vsebino izbranega sporočila za javnost (pr-content-dbi .pl), tretji pa nam bo omogočil, da v bazo podatkov (pr-add-dbi.pl) dodamo najnovejše sporočilo za javnost. Postavitev lahko zaupate svojemu najljubšemu urejevalniku HTML, na primer Allaire HomeSite (http://www.allaire.com/). Ne pozabite le, da morate pri ustvarjanju predloge pustiti prazna področja, v katera bo vstavljena dinamična vsebina (seveda spremenljive dolžine).

Ko razvijete celotno zasnovo svojih sporočil za javnost, preprosto vstavite svoje specifične ključne besede v prazne prostore zgoraj (za več o tem glejte spodaj). Ko uporabnik zahteva sporočilo za javnost, bo spletni strežnik obdelal kodo Perl in zamenjal ključne besede v predlogah z vsebino, pridobljeno iz baze podatkov, to je določeno sporočilo za javnost.

Zadnja stvar, ki jo morate storiti, je, da svoje predloge naložite na spletni strežnik v posebnih imenikih. Uporabite lahko odjemalca FTP CuteFTP (http://www.cuteftp.com/), mi pa raje uporabljamo datotečno lupino FAR. Dve pomembni stvari, ki si ju morate zapomniti: prvič, datoteke predlog morajo vsebovati imena, ki se končajo na .pl, in drugič, imeti morajo dovoljenje za izvajanje (v sistemih UNIX morate izvesti ukaz chmod 0755 ime_predloge.pl). To je vse!

Dodajanje funkcionalnosti

Ni posebej težko dodati funkcionalnost mehanizmu za objavo sporočil za javnost. Povezave do sporočil za javnost, ki so na voljo v zbirki podatkov, lahko razvrstite po datumu ali naslovu in jih razvrstite po letih. Ali pa bi na primer morda želeli na svoji spletni strani prikazati naključno sporočilo za javnost, ki obiskovalcem občasno zagotavlja informacije, ne glede na to, kdaj je bilo dejansko objavljeno. Toda morda najbolj pomembna in uporabna funkcija bo dodajanje obrazca HTML za vnos vsebine sporočila za javnost in razvoj programa CGI v Perlu za obdelavo tega obrazca in nato postavitev dokumenta v bazo podatkov. Spomnimo se, da je CGI (Common Gateway Interface) protokol, mehanizem ali uradni dogovor med spletnim strežnikom in ločenim programom. Strežnik kodira vhodne podatke, kot so obrazci HTML, program CGI pa jih dekodira in ustvari tok izhodnih podatkov. Specifikacija protokola ne pove ničesar o nobenem posebnem programskem jeziku. Zato so programi, ki ustrezajo temu protokolu, lahko napisani v skoraj vseh jezikih – C, C++, Visual Basic, Delphi, Tcl, Python ali, kot v našem primeru, Perl.

Povzemimo nekaj rezultatov. Upamo, da vam bo ta članek pomagal oceniti prednosti koncepta dinamičnih spletnih strani pred statičnimi. Uporaba tega koncepta bo zmanjšala ročno delo, pomagala porazdeliti delovno obremenitev strežnika in vam omogočila hitro povečanje količine vsebine na spletnem mestu. Kombinacija Apache, MySQL in Perl bo zagotovila praktično brezplačno, enostavno za uporabo, prilagodljivo za namestitev in konfiguracijo večplatformsko in razširljivo razvojno okolje. Tu ne bomo upoštevali posebnosti njihove namestitve, saj, prvič, za ta članek preprosto ni dovolj prostora, in drugič, vsako od teh orodij ima zelo podrobno dokumentacijo.

Izdelava baze podatkov v MySQL DBMS

Razvoj modela baze podatkov

Prvi in ​​najpomembnejši korak pri ustvarjanju baze podatkov je razvoj njenega modela. Pa začnimo.

Korak 1

Bazo podatkov moramo nekako poimenovati. Imenujmo ga db_website.

2. korak

Treba je določiti, kaj točno bodo tabele baze podatkov vsebovale. Baza podatkov lahko vsebuje na stotine tabel. Sprva bomo potrebovali samo eno mizo za shranjevanje naših sporočil za javnost. Imenujmo to tbl_news_items.

3. korak

Določiti moramo polja, ki jih bo vsebovala naša tabela. Ta polja bodo predstavljala vse elemente sporočila za javnost. Naš primer uporablja pet polj: col_id (številčni identifikator sporočila za javnost), col_title (naslov), col_date (datum objave), col_fullstory (vsebina), col_author (ime avtorja). Polje col_id bo vsebovalo enolični identifikator, s katerim lahko uporabnik povpraša po vsebini določenega sporočila za javnost.

Izdelava baze podatkov

Zdaj moramo vzpostaviti povezavo z MySQL DBMS in ustvariti našo bazo podatkov. Spodaj vam bomo pokazali, kako to storite iz ukazne vrstice. Vendar pa obstaja veliko sistemov za upravljanje ali upraviteljev MySQL DBMS, ki vam omogočajo upravljanje z uporabo uporabniku prijaznega grafičnega vmesnika.

Najprej bi vsekakor morali poznati osnove jezika SQL poizvedbe(Strukturirani povpraševalni jezik za delo s podatkovnimi bazami). Paket MySQL DBMS vključuje popoln opis podprte specifikacije SQL. Ta jezik je lahko razumljiv, ker so njegovi operaterji in njihovi konstrukti lahko razumljivi in ​​zapomniti. Za delo boste potrebovali operatorje za ustvarjanje (CREATE ali INSERT), izbiranje (SELECT) in brisanje (DROP ali DELETE) podatkov ter njihovo spreminjanje (UPDATE, MODIFY). V konkretnih primerih bomo uporabili le nekatere izmed njih.

Da bi se izognili nastavljanju uporabniških računov in dodeljevanju potrebnih pravic dostopa, predpostavimo, da uporabljate skrbniški račun (root).

Korak 1

Odprite terminalsko okno (če delate v grafični lupini X Window OS Linux ali Windows 9x/NT/2000) in vzpostavite povezavo z MySQL DBMS tako, da vnesete ukazna vrstica mysql. V odgovor bi morali biti pozvani, da vnesete ukaze mysql>.

2. korak

Ustvarimo svojo bazo podatkov tako, da vnesemo:

CREATE DATABASE db_website;

Po vnosu vsakega ukaza ne pozabite vnesti simbola (;). To je zelo pomembno, ker signalizira konec vnosa ukazov v MySQL.

Uporabite db_website;

4. korak

Izdelajmo tabelo tbl_news_items, kjer določimo vrsto podatkov, ki bodo shranjeni v njenih poljih. Vnesite:

1. CREATE TABLE tbl_news_items (2. col_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 3. col_title VARCHAR(100), 4. col_author VARCHAR(100), 5. col_body TEXT, 6. col_date DATE 7.);

5. korak

Zdaj, ko smo ustvarili tabelo za shranjevanje naših podatkov, jo moramo izpolniti z nekaj vzorčnimi podatki. Upoštevajte, da v naslednjem ukazu ne bomo definirali polja col_id, ker se samodejno izpolni, ko so dodani novi podatki. Upoštevajte tudi, da je sintaksa za datum<год/месяц/день>. Torej, v ukazni poziv mysql> vnesite naslednji ukaz.

8. INSERT INTO tbl_news_items (col_title, _ col_author, col_body, col_date) 9. VREDNOSTI (10. 'Moje prvo sporočilo za javnost', 11. 'Vaše ime', 12. 'To sporočilo za javnost je shranjeno v bazi podatkov MySQL', 13 . '2001/4/15' 14.);

Vnesite še nekaj podobne zahteve vstaviti. Če si želite ogledati, kaj je shranjeno v bazi podatkov, v ukazni poziv mysql> vnesite:

IZBERI * IZ tbl_news_items;

Ustvarjanje dinamičnih spletnih strani v Perlu

Priprave na delo

Za zagon programov Perl boste potrebovali tolmač Perl različice 5.005 ali 5.6 distribucij Perl Standard ali ActiveState Perl za UNIX ali Win32. Če boste razvijali aplikacije za delovanje pod Win32, potem je paket iz ActiveState nekoliko bolj priročen za uporabo, vsebuje pa tudi pripomoček PPM za namestitev dodatnih modulov.

Za organizacijo interakcije naših programov Perl z MySQL DBMS je potrebno, da je modul DBI vključen v distribucijo Perl. Ker modul načeloma ne naredi ničesar sam, ampak vse operacije interakcije z bazami podatkov preloži na ustrezni gonilnik, je potrebna namestitev knjižnice DBD-Mysql (gonilnik baze podatkov MySQL za modul DBI). Kot je navedel Tim Bunce, avtor in razvijalec navedenega modula, je »DBI API za organiziranje dostopa do baz podatkov iz programov Perl. Specifikacija API-ja DBI definira nabor funkcij, spremenljivk in pravil, ki se uporabljajo za pregleden vmesnik z bazami podatkov."

Koncept gonilnikov baze podatkov je zelo priročen, ker v vaši aplikaciji Perl uporabljate standardne klice DBI, ki nato posredujejo module ustreznemu gonilniku, ta pa bo neposredno sodeloval z bazo podatkov, ne da bi se morali učiti tehnične lastnosti vsak poseben DBMS. Torej obstajajo gonilniki DBD::Sybase, DBD::Oracle, DBD::Informix itd. (slika 1,).

Pojdimo malo preko okvira članka. Predpostavimo, da paket DBI ne vključuje gonilnika za določen DBMS. V tem primeru bo na pomoč priskočil most DBD-ODBC. Dovolj je, da ustvarite nov vir podatkov (Data Source Name) za gonilnik ODBC (Open DataBase Connectivity), kjer morate izbrati vrsto tega DBMS, naslov gostitelja, na katerega želite vzpostaviti povezavo, ime baze podatkov. in avtorizacijske podatke, to je uporabniško ime in geslo (slika .3). In nato z uporabo modula DBI komunicirajte z bazo podatkov. Poleg tega je ActiveState Perl običajno standardno opremljen z modulom Win32::ODBC (Win32-ODBC). Delo z njim je nekoliko drugačno od dela z DBI, a na splošno zelo podobno. Edina razlika je v tem, da je Win32::ODBC modul samo za sisteme Win32 in vam omogoča učinkovitejše delo z izvornimi funkcijami ODBC kot DBD::ODBC.

Med ODBC in DBI lahko potegnemo vzporednico. DBI je analog ODBC Administratorja (upravitelj gonilnika baze podatkov). Vsak gonilnik DBD po svojih funkcijah ustreza gonilniku ODBC. Edina stvar, ki vas lahko zmoti, je dejstvo, da, kot je bilo omenjeno zgoraj, obstaja gonilnik DBD::ODBC. Vendar vam omogoča samo vzpostavitev komunikacije DBI z gonilniki ODBC.

Za namestitev DBI in DBD-Mysql z uporabo pripomočka PPM v okolju Win32 vnesite v ukazno vrstico:

ppm namestite DBI

Upoštevajte, da mora biti vaš računalnik na tej točki povezan z internetom. Če imate na svojem lokalni disk, uporaba osnovne informacije z vnosom ukaza:

ppm pomoč pri namestitvi

Za uporabnike UNIX bo namestitev modula DBI skoraj enaka namestitvi drugih modulov Perl:

Tar –zxvf DBI-1.06.tar.gz cd DBI-1.06/ perl Makefile.PL make make test make install

Uporabite lahko tudi lupino CPAN. Če imate v računalniku nameščeno različico paketa ActiveState za UNIX, lahko delate tudi s pripomočkom za namestitev PPM. Včasih se zgodi, da lupini CPAN in PPM ne delujeta, če je v omrežju podjetja, na katerega je povezan vaš računalnik, nameščen požarni zid, oz. požarni zid(požarni zid). V tem primeru vam bodo pomagali samo moduli z ročno prenesenimi izvornimi kodami. Če jih želite namestiti in se povezati s Perlom ali Apacheom, boste potrebovali tolmač Perl, prevajalnik C/C++ ali GCC/PGCC in enega od pripomočkov make build (iz enega od klonov UNIX, kot tudi Microsoft Visual C++), nmake ali dmake. Tako postane postopek namestitve modulov nekoliko bolj zapleten. Skoraj vsi so opremljeni z "build" dokumentacijo, tako da ne bi smeli imeti preveč težav.

Prikaz seznama artiklov

Zdaj, ko imate delujočo podatkovno zbirko sporočil za javnost, jo lahko preprosto povežete s svojo spletno stranjo. Začnimo z ustvarjanjem najpreprostejša stran, ki prikaže seznam vseh razpoložljivih sporočil za javnost. Upoštevajte, da spletni strežnik Apache privzeto "misli", da bi morali biti vsi vaši dokumenti v njegovem imeniku htdocs in izvršljive datoteke- v cgi-bin. Zato morate vse datoteke s končnico .pl postaviti v imenik cgi-bin. po svoje, ustvarjene datoteke Predloge HTML morate postaviti v imenik tpl. Hierarhija imenikov bo videti takole:

/ (koren katerega koli diska) /local /local/usr /local/usr/bin /local/usr/cgi-bin /local/usr/htdocs /local/usr/tpl

Za sisteme DOS/Windows je lahko pot do cgi-bin videti takole:

C:\local\usr\cgi-bin

Korak 1

Uporaba vašega najljubšega urejevalnik besedil, ustvarite datoteko pr-list-tpl.htm:

15. 16. 17. Sporočila za javnost 2001 18. 19. 20. @BLOKIRAJ@ 21. 22.

Ta datoteka je namenjena prikazu seznama vseh razpoložljivih sporočil za javnost.

2. korak

Ustvarite datoteko pr-list-block-tpl.htm, ki bo prikazala vsak blok z najdenim sporočilom za javnost v obliki tabele:

23.

24. 25. 26.
@TITLE@
@AVTOR@, _ @DATUM@

3. korak

Ustvarite datoteko pr-content-tpl.htm, ki bo prikazala vsebino sporočila za javnost:

27. 28. 29. Sporočila za javnost 2001: @TITLE@ 30. 31. 32.

@TITLE@

33. 34. 35. 36. 37.
@TITLE@
Avtor: @AVTOR@ Datum: @DATE@
@TELO@
38. Prikaži seznam sporočil za javnost.. 39. 40.

4. korak

Ustvarite Perl skript pr-list-dbi.pl, ki bo prebral podatke iz baze db_website in z uporabo datotek predloge HTML prikazal seznam sporočil za javnost (besedilo te skripte najdete na našem CD-ju).

Zdaj pa poglejmo seznam kod in poglejmo, kako deluje program za prikaz seznama sporočil za javnost.

Vrstice 1-9 so kot inicializacijski blok, v katerem so deklarirane vse globalne spremenljivke in konstante:

41. #!/local/usr/bin/perl 42. 43. uporabite DBI; 44. $dbh = DBI->connect('dbi:mysql:db_website','root',''); 45. $path = "/local/usr/tpl"; 46. ​​​​$TPL_LIST = "$path/pr-list-tpl.htm"; 47. $TPL_LIST_BLOCK = "$path/pr-list-block-tpl.htm"; 48. 49. print "Content-type:text/html\n\n";

Spletnemu strežniku Apache najprej povemo pot do lokacije tolmača Perl, ki se zažene, ko je zahtevan skript, ga preveri za napake in ga nato izvede. Nato deklariramo modul DBI (DataBase Interface), katerega metode bodo uporabljene v programu za interakcijo z bazo podatkov (3. vrstica). Nato vzpostavimo povezavo z našo bazo podatkov db_website(4) z uporabo root (skrbnika) kot uporabniškega imena za prijavo in praznega niza (privzeto) kot gesla. V spremenljivki $path navedemo pot, kjer se nahajajo datoteke predloge HTML (5). V spremenljivkah $TPL_LIST in $TPL_LIST_BLOCK navedemo njihova imena (6, 7). Nato povemo spletnemu strežniku, da morajo biti vsi odhodni podatki predstavljeni v besedilnem/html formatu MIME za izpis toka HTML v brskalnik uporabnika (9).

Vrstice 11-22 predstavljajo telo programa:

50. 51. odpri(L, "$TPL_LIST"); 52. medtem ko ($line1= ) ( 53. chomp($line1); 54. if ($line1=~/\@BLOCK\@/) ( 55. read_db(); 56. ins_data(); 57. ) else ( 58. print "$line1 \n"; 59. ) 60. ) 61. zapri (L); 62. 63. $dbh->odklopi;

Odprite datoteko predloge pr-list-tpl.htm (11) in jo preglejte v zanki (12-20), tako da vsako prebrano vrstico zapišete v spremenljivko $line. Med vsako ponovitvijo preverimo prisotnost v tej vrstici ključna beseda@BLOK@ (14-19), kar pomeni, da v to mesto morate vstaviti blok s sporočilom za javnost. Takoj ko ga najdemo, pokličemo proceduri read_db() in ins_data().

Vrstice 26–39 so telo procedure read_db(), zasnovane za branje vsebine tabele tbl_news_items, ki shranjuje naša sporočila za javnost:

64. 65. 66. sub read_db ( 67. $c=0; 68. my($sql) = "SELECT * FROM tbl_news_items"; 69. $rs = $dbh->prepare($sql); 70. $rs ->izvedi; 71. medtem ko (moj $ref = $rs->fetchrow_hashref()) ( 72. $id[$c] = "$ref->('col_id')"; 73. $title[$c] = "$ref->('col_title')"; 74. $author[$c] = "$ref->('col_author')"; 75. $date[$c] = "$ref->(' col_date')"; 76. $c++; 77. ) 78. $rs->finish(); 79. )

Inicializiramo števec $c=0, naredimo zahtevo za izbiro vseh podatkov iz tabele (28), izvedemo zahtevo (29, 30) in dobimo podatke v nabor zapisov (recordset) $rs. Nato v zanki (31-37) ekstrahiramo podatke iz nabora zapisov z metodo fetshrow_hashref in vrnemo povezavo do asociativnega polja %ref (31), ki vsebuje imena in vrednosti polj trenutnega zapisa. Ekstrahirane podatke (32-35) zapišemo v običajna polja @id, @title, @author in @date, ki ustrezajo njihovim vrstam. Zapiramo zapisnik (38).

Vrstice 41-53 - telo procedure ins_data(), ki izvaja vstavljanje podatkov, ekstrahiranih iz baze podatkov, v odhodni tok podatkov; vrstice 55-63 - telo procedure pr_block(), klicane v zanki iz procedure ins_data():

80. 81. sub ins_data ( 82. $toread = "pr-read-dbi.pl"; 83. for ($i=0; $i<$c; $i++) { 84. $line = &pr_block; 85. 86. $line =~ s/\@NUMBER\@/$id[$i]/; 87. $line =~ s/\@TITLE\@/$title[$i]/; 88. $line =~ s/\@AUTHOR\@/$author[$i]/; 89. $line =~ s/\@DATE\@/$date[$i]/; 90. $line =~ s/\@READ\@/$toread/; 91. print "$line"; 92. } 93. } 94. 95. sub pr_block { 96. my($block) = ‘’; 97. open (B, "$TPL_LIST_BLOCK"); 98. while ($line=) ( 99. $block = $block.$line; 100. ) 101. close(B); 102. vrnitev ($blok); 103.)

Torej, ko prejmemo največjo vrednost števca $c kot rezultat postopka read_db(), v zanki (43-52) zaženemo postopek pr_block(), ki prebere vsebino predloge HTML pr-list- block-tpl.htm in ga zapiše v spremenljivko $block (59), katere vrednost se nato vrne (62) v spremenljivko $line (44) procedure ins_data(). Nadalje v isti zanki zamenjamo (46-50) ključne besede @NUMBER@, @TITLE@, @AUTHOR@, @DATE@, @READ@, ki jih najdemo v odhodnem toku $line, z vrednostmi polja, ki ustrezajo tej ponovitvi zanke ($i) @id, @title, @author, @date in spremenljivke $toread.

Tiskanje besedila sporočila za javnost

Ko prikažemo seznam vseh sporočil za javnost, ki so na voljo v bazi (slika 4), moramo uporabniku omogočiti vpogled v besedilo katerega koli izmed njih (ustrezno skripto najdete tudi na našem CD-ju).

Nova skripta pr-read-dbi.pl se bo nekoliko razlikovala od pr-list-dbi.pl, ki smo jo že ustvarili.

Ta seznam je 98 % podoben seznamu 1, čeprav je nekaj manjših razlik:

  • knjižnica CGI je povezana za branje parametra id (9) iz poizvedbenega niza (na primer http://localhost/cgi-bin/pr-content-dbi.pl?id=1);
  • uporabljena je samo ena predloga HTML (pr-content-tpl.htm);
  • poizvedba po bazi podatkov je dopolnjena s pogojnim stavkom SQL WHERE za pridobitev vseh podatkov, ki ustrezajo določenemu sporočilu za javnost s col_id;
  • Iz baze se prebere tudi polje col_body z besedilom izbranega sporočila za javnost.

Ustvarjanje novega sporočila za javnost

Razširimo funkcionalnost našega sistema z dodajanjem možnosti ustvarjanja novih sporočil za javnost, ne da bi morali neposredno delati z bazo podatkov, da bi tabelo tbl_news_items dopolnili z novimi informacijami.

Novi program Perl (ki je tako kot prejšnja dva na zgoščenki) se bo torej od prejšnjih razlikoval predvsem po tem, da ni namenjen prikazovanju podatkov, temveč njihovemu dodajanju v bazo. Zato moramo nekoliko spremeniti del, ki je odgovoren za interakcijo z bazo podatkov z uporabo INSERT SQL poizvedbe in ustreznih operatorjev modula DBI.

Vrstice 12-18 so telo glavnega programa:

12. if ($cmd ne "add") ( 13. &show_form; 14. ) else ( 15. $dbh = DBI->connect('dbi:mysql:db_website', _ 'root',''); 16. &add_pr; 17. dbh->odklopi; 18. )

Tukaj preverimo, ali je bil prejet ukaz za dodajanje sporočila za javnost v bazo podatkov. Takoj ko prispe, vzpostavimo povezavo z bazo (15), izvedemo podprogram app_pr() (16) in prekinemo povezavo (17). Če ukaza ni bilo, preprosto prikažemo obrazec za izpolnjevanje (13) podatkov sporočila za javnost - postopek show_form().

Vrstice 20–36 so telo postopka dodajanja sporočila za javnost pr_add():

19. 20. sub add_pr ( 21. $title = $q->param("pr_title"); 22. $author = $q->param("pr_author"); 23. $body = $q->param( "pr_telo"); 24. $telo =~ s/\r\n/
/g; 25. 26. my($sql) = "VSTAVITE V VREDNOSTI tbl_news_items (col_title,col_author,col_body,col_date) (\'$title\',\'$author\',\'$body\',CURDATE()) "; 27. $rs = $dbh->do($sql); 28. 29. if ($@) ( 30. $rc = $dbh->rollback; 31. ) else ( 32. $rc = $dbh->commit; 33. ) 34. 35. natisni "Lokacija: /cgi -bin/pr-list-dbi.pl\n\n"; 36.)

Najprej obdelamo podatke obrazca (22-25), sestavimo SQL poizvedbo (27) in jo izvedemo (27) z uporabo metode DBI $dbh->do(). Ker se tukaj izvaja postopek vnosa podatkov v bazo podatkov, morate poskrbeti za možnost preklica operacije v primeru napak. Da bi to naredili, smo vstavili kodo za preklic transakcije in povrnitev v prejšnje stanje (30-34). Če $dbh->do() ne uspe, zavržemo izvedene spremembe (31). Če ne pride do napake, potrdimo izvedene spremembe (33). Nato po vseh korakih gremo preprosto na stran s seznamom vseh sporočil za javnost (36).

Vrstice 37–55 so telo postopka izpisa obrazca za vnos informacij o novem sporočilu za javnost (z uporabo predloge HTML, katere ime je podano v spremenljivki $TPL_INSERT, pr-add-tpl.htm):

37. 38. sub show_form ( 39. print "Content-type:text/html\n\n"; 40. 41. open (L, "$TPL_INSERT"); 42. while ($line= ) ( 43. chomp($line); 44. if ($line=~/\@/) ( 45. if ($line=~/\@ADD\@/) ( 46. $toadd = "pr-add -dbi.pl"; 47. $line =~ s/\@ADD\@/$toadd/; 48. ) else ( 49. $tolist = "pr-list-dbi.pl"; 50. $line =~ s/\@LIST\@/$tolist/; 51. ) 52. ) 53. natisni "$line\n"; 54. ) 55. Zapri(L);

Preobremenitev sistema

Ker razvijate dinamično spletno mesto, lahko količina informacij na njem zelo hitro raste. Poleg tega z naraščanjem priljubljenosti vašega vira narašča tudi število njegovih obiskovalcev, kar lahko povzroči preobremenitev strežnika, to je zmanjšanje zmogljivosti sistema. Preden začnete iskati načine za povečanje moči strojne opreme in poskusite najti konfiguracijo nov sistem, lahko poskusite odpraviti katero od možni razlogi prekomerna poraba RAM-a. Krivec je lahko isti Perl. Dejstvo je, da vsakič, ko dostopate do enega ali drugega skripta Perl, spletni strežnik naloži tolmač Oven(zavzema od 500-1000 KB na trdem disku), slednji pa razčleni program od začetka do konca v iskanju sintaktičnih napak. Nato ga ponovno prebere, inicializira spremenljivke in funkcije, prebere vhodne podatke (parametre), obdela in vrne rezultate. Si lahko predstavljate, kaj se zgodi, če si na stotine obiskovalcev vaše strani hkrati želi ogledati vaša sporočila za javnost?

Za pospešitev tega procesa so bile ustvarjene posebne rešitve, ki predstavljajo dodatni moduli za spletni strežnik Apache - mod_fastcgi in mod_perl.

Modul FastCGI (mod_fastcgi) vključuje široko uporabo orodij za izmenjavo podatkov med tekočimi procesi (nalogami) operacijski sistem. Na začetku svojega delovanja spletni strežnik aktivira program CGI in pusti ta program ter več njegovih kopij teči v ozadje. Morebitne zahteve do programa bodo preprosto prenesene na že aktivne kopije, kar bo razbremenilo strežnik dodatne obremenitve, povezane s ponovnim aktiviranjem procesa.

Modul mod_perl vam omogoča, da naložite Perl v RAM v isti naslovni prostor kot sam spletni strežnik Apache in pustite Perl v pomnilniku, dokler se slednji ne zaključi, s čimer preprečite nalaganje naslednje kopije tolmača pri dostopu do programa CGI. Ta modul se uporablja pogosteje kot FastCGI, ker ne zahteva nobenih sprememb v programu.

ComputerPress 6"2001

Na internetu je ogromno različnih virov. Vsak projekt je večinoma sestavljen iz dokumentnih strani HTML, ki so glede na obnašanje dokumenta v brskalniku razdeljene na statične in dinamične. Po drugi strani pa se ti koncepti pogosto uporabljajo v drugem pomenu. Tako tudi po načinu nastanka dokumente delimo na statične in dinamične.

Definicija statičnih spletnih mest je, da so strani vedno videti enako, ne glede na dejanja uporabnikov. Statična spletna mesta so praviloma manj zanimiva za uporabnika, saj za razliko od dinamičnih spletnih mest praktično nimajo interaktivnih elementov.

Dinamična spletna mesta, ki vključujejo dinamične strani, ki se generirajo "sproti" na zahtevo brskalnika. To so strani, ki se že lahko odzivajo na dejanja in spremembe uporabnikov. Na primer, ko kliknete na besedilo, se lahko pojavi blok besedila s prevodom besede. Uporabnik lahko komunicira z dinamičnimi stranmi, medtem ko takoj prikaže rezultat svojih dejanj.

Statične strani spletnega mesta

Statično spletno mesto se šteje za omrežni vir, ki vključuje statične strani (html, htm, dhtml, xhtml), ki tvorijo eno celoto. Vsebuje (v obliki oznak HTML) besedilo, slike, multimedijske vsebine (avdio, video) in oznake HTML. Oznake so lahko storitvene oznake, namenjene brskalniku ali namenjene umestitvi, oblikovanju videza in prikazu informacij. Vse spremembe statičnega spletnega mesta se izvedejo v izvorni kodi dokumentov virov (strani), za kar morate imeti dostop do datotek na spletnem strežniku.

Strani statičnih spletnih mest so shranjene na strežniku kot dokumenti HTML. Strani statičnih spletnih mest so oblikovane ročno. Če morate spremeniti vsebino strani, morate urediti kodo HTML za vsako stran.

Običajno statično spletno mesto vsebuje eno ali manjše število strani ali, na primer, če je spletno mesto vizitke podjetja in se podatki na njem nikoli ne spremenijo ali pa se posodabljajo zelo redko. Na takem omrežnem viru ni možnosti, kot je na primer komentiranje ali registracija itd.

Navsezadnje lahko statični vir posodobi le oseba, ki je dobro seznanjena s spletnim razvojem, saj ni upravne plošče, zato je treba vse posodobitve projekta opraviti prek njegove izvorne kode.

Statična spletna mesta so cenejša in zavzamejo manj prostora za gostovanje, zato jih mnoga mala podjetja še vedno raje uporabljajo kot dinamična spletna mesta.

Prednosti statičnih spletnih mest vključujejo:

  1. So enostavni in hitri za razvoj
  2. Poceni za razvoj, ustvari minimalno obremenitev spletnega strežnika in se hitro naloži.
  3. Ni zahteven glede virov gostovanja.
  4. Prenos statične spletne strani na novo gostovanje je precej preprost.

Statična spletna mesta imajo poleg prednosti tudi slabosti:

  1. Za posodobitev projekta so potrebne izkušnje s spletnim razvojem. Če želite posodobiti tudi najmanjšo podrobnost na takem viru, se boste morali sami ukvarjati s kodo HTML in CSS ali pa se boste morali vsakič zateči k storitvam spletnega skrbnika.
  1. Stagnacija vsebine. Ker se vsebina statične strani zelo redko posodablja, to zelo negativno vpliva na promet in promocijo projekta v . Seveda lahko takšen vir promovirate, vendar predvsem s plačanimi metodami.
  1. Poleg tega statičnega spletnega mesta ni priporočljivo uporabljati v velikih projektih.

Od tu je očitno, da če ima strežnik redno html stran, potem je ta pristop zelo omejen. Na primer, obstaja spletna trgovina, v katero je bil dodan nov izdelek. Če je taka spletna trgovina sestavljena iz »statičnih« strani, potem boste morali ročno urediti več drugih strani. To je vsaj katalog izdelkov in očitno naročilnica. In če izdelka zmanjka, morate spet posodobiti statično spletno mesto, kar je zelo neprijetno. V zvezi s tem je težko najti spletno trgovino na internetu, ki uporablja "čisto" kodo HTML.

Dinamično spletno mesto

Dinamično spletno mesto- omrežni vir, ki ga sestavljajo dinamične strani - predloge, vsebina, skripte in drugo, v obliki ločene datoteke. Dinamične strani, ki so na koncu prikazane uporabnikovemu brskalniku, se na zahtevo oblikujejo na strani strežnika iz predloge strani in ločeno shranjene vsebine (informacije, skripte itd.). Praviloma se za prikaz poljubnega števila strani istega tipa uporablja ena predloga strani, v katero se naloži ustrezna vsebina, kar omogoča enkratno prilagoditev videz dinamično spletno mesto (veliko vseh njegovih strani), urejanje samo ene predloge.

Dinamične strani generira spletni strežnik iz več datotek (predlog). Vse informacije so običajno shranjene v bazi podatkov. Skoraj vsi blogi so dinamična spletna mesta. Ko uporabnik zahteva stran, se ustrezne informacije pridobijo iz baze podatkov, vstavijo v predlogo za oblikovanje spletne strani in jih spletni strežnik pošlje uporabnikovemu brskalniku. Tako morate pri posodabljanju vsebine dinamičnega vira preprosto dodati besedilo nova stran, ki gre nato v bazo podatkov. Navsezadnje iz tega sledi, da se zdi, da se dinamično spletno mesto samo posodablja.


Prednosti dinamičnih spletnih mest so:

  1. Vir je bolj funkcionalen, saj se vsebina upravlja prek posebnih obrazcev, ki olajšajo dodajanje, urejanje in brisanje informacij.
  2. Pri dodajanju ali urejanju vsebine ni potrebno posebno znanje s področja spletnega obvladovanja (HTML, CSS).
  3. Sposobnost dinamične strani, da spremeni vsebino glede na dejanja obiskovalcev.
  4. Sposobnost ustvarjanja velikih večnamenskih projektov.
  5. Dinamične strani je veliko lažje spreminjati in posodabljati.
  6. Ločevanje informacij in oblikovanja na dinamičnem spletnem mestu omogoča bolj prilagodljivo upravljanje.
  7. Nenehno posodabljanje dinamične strani daje velike možnosti za promocijo, kar pozitivno vpliva na promocijo projekta in ima več obiskovalcev.

Poleg prednosti dinamična spletna mesta niso brez pomanjkljivosti:

  1. Potreba po uporabi dodatnih programsko opremo, kar pomeni visoke stroške ustvarjanja in vzdrževanja dinamičnih strani.
  2. Povečane zahteve glede strojne opreme strežniških sistemov. Ta težava postane še posebej opazna na dinamičnih spletnih mestih z velikim prometom.
  3. Gostovanje bo temu primerno tudi nekoliko dražje, saj se bo za takšen projekt treba povezati dodatne lastnosti.
  4. Kompleksnost velikih strukturnih sprememb dinamičnih strani. V tem primeru je vse odvisno od programsko opremo, ki ga uporablja vir. Vsak program ima svoje omejitve, da bi jih zaobšli, morate spremeniti program, spremeniti starega ali poiskati novega.
  5. Za vzdrževanje funkcionalnosti dinamičnih strani morate imeti ustrezno znanje.

Orodja za ustvarjanje dinamičnih strani

Če statična spletna mesta niso podvržena skoraj nobenim spremembam in se stran prikaže na zaslonu monitorja obiskovalca v svoji "izvirni" obliki, potem dinamična stran, kot jo oseba vidi, ne obstaja na strežniku. Gre na več različne poti iz podatkov, shranjenih na strežniku, in se šele po tem prikaže obiskovalcu.

Prva možnost je lahko kombinacija več (dveh ali več) ločenih delov v enega - to je najenostavnejši način generiranja.

Druga možnost je, da stran predloge zapolnite z informacijami, ki so shranjene ločeno ali pridobljene kot rezultat algoritma (na primer kot rezultat izračunov).

Tretja in morda najpogostejša možnost je kombinacija prvih dveh v vseh možnih različicah, tj. stran je sestavljena iz več delov, v katere se vnašajo različne spremembe.

Najpogostejše orodje za ustvarjanje dinamičnih strani je programski jezik JavaScript. VBscript se uporablja veliko manj pogosto ( Visual basic scenarij).

Če vir vsebuje pogosto spreminjajočo se vsebino, se običajno uporabljajo skripti, ki se za razliko od JavaScripta izvajajo na strežniku.

V tem primeru dinamično spletno mesto deluje takole:

  1. Brskalnik zahteva dokument od strežnika.
  2. Strežnik ugotovi, da je dokument skript, in ga zažene za izvedbo.
  3. Skript ustvari html stran.
  4. Strežnik pošlje generirano stran brskalniku, tako da brskalnik ne ve, da je bil skript izveden na strežniku.

Obstaja več programskih jezikov, ki vam omogočajo pisanje skriptov za dinamične strani. Najpogostejši med njimi:

Perl
SSI
PHP
A.S.P.
Python
Java
Binarna koda (program C ali C++, preveden v izvršljivo kodo).

Vsak od teh programskih jezikov ima svoje lastnosti uporabe. Skripte lahko pišete v katerem koli jeziku. Glavna stvar je poznati njegove prednosti in šibke strani in jih učinkovito uporabite.

Dinamična spletna mesta ne postavljajo le novih zahtev za njihovo ustvarjanje in vzdrževanje, ampak so tudi veliko dražja za razvoj, poleg tega pa zahtevajo vzdrževanje nove kadrovske enote - programerja. Ob tem je treba opozoriti, da tehnologija ne miruje, zato se razvijajo tudi ponujene možnosti za ustvarjanje dinamičnih strani. In tukaj je bila najdena rešitev v obliki ustvarjanja visokokakovostnih virov na CMS, ki postajajo vedno bolj priljubljeni.

CMS je okrajšava za Content Management System, kar dobesedno pomeni Resource Content Management System. Preprosto povedano, to je isti programski paket, ki vam omogoča spreminjanje dizajna in vsebine dinamičnih strani na način, ki ga zahteva uporabnik. Mimogrede, SMS temeljijo na enem ali več zgoraj omenjenih programskih jezikih.

Trenutno na internetu deluje veliko takšnih sistemov, nekateri so brezplačni, nekateri plačljivi. Pogosto takšne sisteme svojim strankam zagotavljajo ustrezna razvojna podjetja. Vsak sistem je individualen in ima svoje prednosti in slabosti.

Tako so dinamična spletna mesta veliko bolj prilagodljiva pri upravljanju. Dinamične strani so kombinacija besedila in grafike, označevalni jezik – tako kot statična spletna mesta. Vendar pa dinamične strani poleg tega uporabljajo tudi različne tehnologije, ki omogočajo sprotno “sestavljanje” spletnih strani. Takšni viri pomagajo svojim lastnikom združiti skupnost obiskovalcev okoli sebe in nudijo veliko več možnosti za komunikacijo s svojim občinstvom, kar jim omogoča, da postanejo bolj zanimivi za obiskovalce z različnimi funkcijami.

Dinamične vire je mogoče razviti iz nič, ročno ustvariti vse potrebno programske kode, skripte itd. Vendar se veliko pogosteje uporabljajo posebni sistemi za upravljanje vsebine za ustvarjanje dinamičnih strani - CMS. CMS vam omogoča uporabo že pripravljenih programskih modulov in komponent, ne da bi jih morali vsakič ustvariti iz nič. Na podlagi enega CMS lahko ustvarite poljubno število projektov.

Hkrati kljub očitnim prednostim dinamičnih strani ne smete domnevati, da so dinamična spletna mesta vedno prava rešitev in popolnoma opustiti strani statičnih spletnih mest. Vedno morate izhajati iz situacije. Ne pravijo brez razloga, da tudi z železnico še vedno rabiš koncert. V projektu je pogosto treba uporabiti statične strani. Če je projekt majhen, sestavljen iz le nekaj strani in vsebina na njem ni posodobljena, potem nima smisla ustvarjati motorja za vir - lažje je enkrat postaviti vse potrebne strani. Vendar to ni mogoče v vseh primerih.

Tudi začetniki verjetno poznajo izraza »statična stran« in »dinamična stran«. Toda kaj točno pomenijo te besedne zveze in kakšna je razlika med njimi, kakšne so prednosti ene ali druge vrste spletnega mesta?

Ne ugibajmo, ampak si jih preprosto podrobno oglejmo in primerjajmo.

Statična in dinamična spletna mesta – kakšna je razlika?

Čeprav danes število dinamičnih spletnih mest narašča, je nemogoče z gotovostjo trditi, ali je stran, ki ste jo odprli, na prvi pogled statična ali dinamična.

Primeri statičnih spletnih mest

Na prvi pogled lahko domnevate, da je spletno mesto statično, če na primer vsebuje eno ali manjše število strani ali če je na primer spletno mesto vizitka podjetja in se informacije na njem nikoli ne spreminjajo oz. posodobljen zelo redko, če nima funkcij, kot so na primer komentiranje ali registracija itd.

Pravzaprav lahko statično spletno mesto posodobi le oseba, ki je dobro seznanjena s spletnim razvojem, saj nima skrbniške plošče, zato bodo morale biti vse posodobitve spletnega mesta izvedene prek izvorne kode.

Statična spletna mesta so cenejša in zavzamejo manj prostora za gostovanje, zato jih mnoga mala podjetja še vedno raje uporabljajo kot dinamična spletna mesta.

Torej lahko vidimo Prednosti statičnih spletnih mest:

  1. So enostavni in hitri za razvoj
  2. Poceni za razvoj in manj obremenjen.

Ob prednostih lahko izpostavimo tudi Slabosti statičnih spletnih mest:

  1. Za posodobitev spletnega mesta so potrebne izkušnje s spletnim razvojem.
  2. Če želite posodobiti tudi najmanjšo podrobnost na takšnem spletnem mestu, se boste morali bodisi sami poglobiti v kodo ali pa, če sami ne poznate HTML in CSS, vsakič poseči po storitvah spletnega skrbnika.

  3. Stagnacija vsebine.
  4. Ker se vsebina takšne strani zelo redko posodablja, vsebina na njih »stagnira«, kar zelo neugodno vpliva na iskalnike. Seveda lahko takšno spletno mesto promovirate, vendar predvsem s plačanimi metodami.

Primeri dinamičnih spletnih mest

Po drugi strani pa lahko dinamična spletna mesta stanejo veliko več, še posebej, če so razvita iz nič. Tudi gostovanje bo nekoliko dražje, saj boste morali priključiti dodatne funkcije. Toda številne prednosti dinamičnih spletnih mest več kot odtehtajo te pomanjkljivosti.

Dinamično spletno mesto daje svojemu lastniku možnost, da zelo enostavno posodablja in dodaja vsebino svojemu spletnemu mestu. Na primer, novice in dogodke je mogoče dodati prek skrbniške plošče v samem brskalniku, ne da bi bilo treba urejati kodne datoteke.

Možnosti dinamične spletne strani so omejene le z našo domišljijo.

Primeri dinamičnih spletnih mest so mesta, ki temeljijo na sistemih upravljanja, spletnih trgovinah, spletnih mestih z malimi oglasi, forumih, spletnih mestih z možnostmi za stranke in obiskovalce, da pustijo ocene, komentarje, naložijo datoteke itd.

Prednosti dinamičnih spletnih mest:

  1. Bolj funkcionalno spletno mesto.
  2. Veliko lažje ga je posodobiti.
  3. Nenehno posodabljanje pozitivno vpliva na promocijo spletne strani in prinaša več obiskovalcev.
  4. Takšno spletno mesto pomaga svojemu lastniku in daje veliko več možnosti za komunikacijo s svojo publiko in s pomočjo različnih funkcij naredi svoje spletno mesto bolj zanimivo za obiskovalce.

zaključki

Vidimo torej, da ima dinamično spletno mesto veliko večje možnosti za razvoj kot statično, kljub temu, da lahko traja več časa, da takšno spletno mesto oživi.

Vse več ljudi se zaveda nesporne prednosti dinamičnih spletnih mest, zato se jih vedno več pojavlja na internetu.

Po drugi strani pa je vse odvisno od tega, kaj VI konkretno potrebujete, ali potrebujete na primer enostransko spletno stran, preko katere boste prodajali nek izdelek, ali spletno stran vizitko od 1 do 5-6 strani, ki jo ne Če nameravate nenehno posodabljati, bi bila povsem naravna rešitev, da se odločite za statično spletno mesto.

Če želite, da se vaš projekt nenehno razvija in polni z vsebino, potem seveda potrebujete dinamično spletno stran.