Arbejde med et stort websted, med mange mennesker og sider, der opretholder det, vil du støde på forskellige arbejdsgange for at komme fra en webdesignpapir prototype til de faktiske sider, der bor på internettet. Arbejdsstrømmen for et komplekst websted kan indeholde mange separate webservere og serverplaceringer. Og hver af disse servere har et andet formål. Denne artikel beskriver nogle af de mere almindelige servere på et komplekst websted og hvordan de bruges.
Produktion Webservere
Dette er den type webserver, som de fleste webdesignere er bekendt med. En produktionsserver er en webserver, der er vært for websider og indhold, der er klar til produktion. Med andre ord er indholdet på en produktionswebserver live på internettet eller er klar til at blive leveret til internettet.
I et lille firma er produktionsserveren, hvor alle websiderne lever. Designere og udviklere tester siderne enten på deres lokale maskiner eller i skjulte eller adgangskodebeskyttede områder på live-serveren. Når en side er klar til at blive levende, flyttes den simpelthen på produktionsserveren, enten via FTP fra den lokale harddisk eller ved at flytte filerne fra den skjulte mappe til live-mappen.
Arbejdsprocessen ville være:
- Designer bygger websted på en lokal maskine.
- Designer test site på en lokal maskine.
- Designer uploader websted til et skjult bibliotek på en produktionsserver for mere test.
- Godkendte designs flyttes ind i webstedets levende (ikke-skjulte) områder.
For et lille websted er dette en helt acceptabel arbejdsgang. Og i virkeligheden kan du ofte se, hvad et lille websted gør ved at se på filer, der hedder ting som:
index2.html og indenfor mapper, der hedder ting som:
/nySå længe du husker, at ikke-adgangskodebeskyttede områder som det kan findes hos søgemaskiner, er postering af opdateringer til produktionsserveren en god måde at teste nye designs på i et levende miljø uden at have brug for ekstra servere.
Testning af server eller QA-server
Testning af servere er en nyttig tilføjelse til en arbejdsflow på hjemmesiden, fordi de giver dig mulighed for at teste nye sider og designs på en webserver, der ikke er synlige for kunderne (og konkurrenterne). Testning af servere er oprettet for at være identisk med den levende side og har normalt en slags versionskontrolopsætning på dem for at sikre, at eventuelle ændringer registreres. De fleste testservere oprettes bag en firmanavn, så kun medarbejdere kan se dem. Men de kan også konfigureres med adgangskodebeskyttelse uden for en firewall.
En testserver er meget nyttig til websteder, der bruger meget dynamisk indhold, programmering eller CGI'er. Dette skyldes, at medmindre du har en server og database oprettet på din lokale computer, er det meget svært at teste disse sider offline. Med en testserver kan du sende dine ændringer til webstedet og derefter se, om programmer, scripts eller database stadig virker som du ønskede.
Virksomheder, der har en testserver, tilføjer typisk det til workflow som dette:
- Desginer bygger lokalet lokalt og tester lokalt, ligesom ovenfor.
- Designer eller udvikler uploader ændringer til testserveren for at teste dynamiske elementer (PHP eller andre server-side scripts, CGI og Ajax).
- Godkendte design flyttes til produktionsserveren.
Udviklingsservere
Udviklingsservere er meget nyttige til websteder, der har en stor udviklingskomponent, såsom komplekse e-handelswebsteder og webapplikationer. Udviklingsservere bruges af webudviklingsholdet til at arbejde med programmering af bagsiden af hjemmesiden. De har næsten altid version eller kildekoden styresystemer til flere teammedlemmer til at bruge, og de giver et server miljø til testning af nye scripts og programmer.
En udviklingsserver er forskellig fra en testserver, fordi de fleste udviklere arbejder direkte på serveren. Formålet med denne server er typisk at prøve nye ting i programmer. Mens testning sker på en udviklingsserver, er det med det formål at lave et stykke kodearbejde, ikke at teste det mod specifikke kriterier. Dette gør det muligt for udviklere at bekymre sig om møtrikker og bolte på hjemmesiden uden at bekymre sig om, hvordan det ser ud.
Når et firma har en udviklingsserver, har de ofte separate hold, der arbejder med design og udvikling. Når dette er tilfældet bliver testserveren endnu vigtigere, da det er her designene mødes med de udviklede scripts. Arbejdsstrømmen med en udviklingsserver er typisk:
- Designere arbejder med design på deres lokale maskiner.
- Samtidig arbejder udviklere på scripts og programmer på udviklingsserveren.
- Koden og designene slås sammen på testserveren til testning.
- Godkendte designs og kode flyttes til produktionsserveren.
Content Server
For websteder med meget indhold kan der være en anden server, der huser indholdsstyringssystemet. Dette giver indholdsudviklerne mulighed for at tilføje deres indhold uden at blive påvirket af det design eller programmer, der bliver bygget sammen med. Indholdsservere er meget ligesom udviklingsservere undtagen forfattere og grafikere.
Staging Server
En staging server er ofte det sidste stop for en hjemmeside, før den sættes i produktion. Staging servere er designet til at være lige så meget som muligt. Således afspejles hardware og software ofte for staging og produktion webservere. Mange virksomheder anvender en testserver som en staging server, men hvis webstedet er ekstremt komplekst, giver en staging server designere og udviklere en sidste chance for at kontrollere, at de foreslåede ændringer fungerer som designet og ikke har en negativ indvirkning på webstedet generelt, uden at andre test udføres på testserveren, der forårsager forvirring.
Staging servere bruges ofte som en form for "ventetid" for ændring af websider. I nogle virksomheder implementerer staging-serveren nyt indhold, der bogføres der automatisk, mens andre virksomheder bruger serveren som et afsluttende test- og godkendelsesområde for personer uden for web-teamet som ledelse, marketing og berørte grupper. Staging serveren sættes typisk i workflow som denne:
- Designere arbejder på designene på deres lokale maskiner eller testserveren.
- Indholdsforfattere opretter indholdet i CMS.
- Udviklere skrive kode på udviklingsserveren.
- Design og kode samles på testserveren til testning (undertiden er indhold inkluderet her, men det er ofte valideret i CMS uden for design-workflow).
- Indhold tilføjes til design og kode på staging serveren.
- Endelige godkendelser modtages, og hele webstedet skubbes til produktionsserveren.
Din virksomheds Workflow kan være anderledes
En ting vi har lært er, at arbejdsgangen i et firma kan være helt anderledes end den hos et andet firma. Vi har bygget websites, der skriver HTML direkte på produktionsserveren ved hjælp af Emacs og vi, og vi har opbygget websteder, hvor vi ikke har haft adgang til andet end en lille del af siden, vi arbejder på, og vi gjorde alt vores arbejde inden for et CMS. Ved at forstå formålet med de forskellige servere, du måske kommer over, kan du gøre dit design og udviklingsarbejde mere effektivt.