Artikel top billede

(Foto: Computerworld)

Hjemmesider i Drupal - del 1

Markedet for Contents Management Systems (CMS) er stort og
broget. Der er mange om budet. Grundet meget store og varierende priser på
kommercielle systemer, er CMS'er med
open source licenser på det seneste blevet populære. Dette er første del i en
serie om et open source CMS – Drupal.

Af Kenneth Geisshirt, Alt om Data

Denne artikel er oprindeligt bragt på Alt om Data. Computerworld overtog i november 2022 Alt om Data. Du kan læse mere om overtagelsen her.

Drupal bliver stadig mere populært. En måde at måle et stykke softwares popularitet på, er ved at se på antal stillinger relateret til det. Og antallet stillinger og især freelance-opgaver hvor Drupal indgår, vokser hurtigt for tiden. En lang række udenlandske websites bruger i dag Drupal. I Danmark bruges Drupal blandt andet af dagbladet Information og TV2 Sport, mens Berlingske er i gang med at flytter omkring 60 forskellige websites over til det. Det er udvikler-orienteret og baseret på et community af enkelt-personer.

Drupal udgives under GNU, General Public License version 3 (GPLv3). Det er den anbefalede licens for software fra Free Software Foundation (FSF), organisationen bag store dele det software, du finder under en almindelig Linux-distribution. Drupal er dog sin egen og benytter blot den licens, som FSF's jurister mener, giver software og dets udviklere, samt brugere, den bedste beskyttelse med hensyn til ophavsret og andre immaterielle rettigheder.

Med Drupal får du et modent CMS. Det har mulighed for at have mange brugere, som kan have forskellige roller. En rolle i Drupal giver brugeren en række rettigheder som for eksempel at tilføje indhold eller oprette brugere. Endvidere har Drupal en række rapporteringsfunktioner, som gør det muligt at hive en lang række statistikker ud om dit website.

En af Drupals store fordele er de mange moduler. Ved installation af moduler kan du tilføje ny funktionalitet til dit website. Der findes en lang række moduler, som du kan downloade. Men det er også mulig at skrive egne moduler. På den måde kan du tilpasse din Drupal-installation til netop dit website og dine krav.

Systemkrav

Drupal er skrevet i PHP, så du skal have en web-server, hvor du kan afvikle PHP-programmer. Linux med Apache er en oplagt mulighed, den giver dig en hurtig start. Det er en god idé at have Apache-modulet mod_rewrite installere, idet det kan hjælpe dig med at få meget pænere URL'er. En pænere URL er lettere at læse og huske.

PHP skal være af version 4.3.5 eller senere, men 5.2-serien er anbefalet. Alle de store Linux-distributioner (Red Hat Enterprise Linux, Ubuntu Linux, SuSE Linux Enterprise Server, Debian GNU/Linux) har pakker, som kan installeres uden de store armbevægelser.

Der er en række PHP-moduler, som du skal have installeret, herunder understøttelse af MySQL. Grunden til det er, at Drupal bruger MySQL som databasemotor. Du kan bruge PostGreSQL, men MySQL er nok lettere at komme i gang med.

Endvidere findes der mange (billige) webhoteller, som giver dig et godt fundament til at installere Drupal på. Det betyder, at det er meget let at komme i gang med Drupal så du kan koncentrere dig om det væsentlige, nemlig dit website.

I meget af din daglige brug af Drupal, kommer du nok ikke til at tænke meget på hverken Apache, MySQL eller PHP, men du kan komme i situationer, hvor det er nødvendigt at ændre på indstillinger. For PHP's vedkommende kan det for eksempel være, hvor lang tid en PHP-funktion må bruge, eller du ønsker måske at ændre på, hvordan Apache omskriver URL'er så de bliver pænere.

Installation

Som udgangspunkt skal du vælge at downloade seneste version af Drupal. I skrivende stund er det version 6.13. Drupal-udviklerne vedligeholder i et mindre omfang stadig 5-serien, så har du en ældre installation, kan du downloade version 5.19. Begge er frigivet den 1. juli 2009.

Drupal er pakket som en tar.gz-fil, og med tar xzf drupal-6.13.tar.gz kan du let pakke den ud. Jeg har valgt at omdøbe folderen drupal-6.13 til altomdata da det giver større mening for mig.

Endvidere har jeg Apache og MySQL kørende på min testmaskine (min bærbar), og jeg sætter derfor Apache op, så jeg kan tilgå min kommende Drupal-installation med URL http://localhost/altomdata/. I infoboks ”Opsætning af Apache” finder du et udsnit af min Apache-konfigurationsfil, som gør dette muligt.

Det er vigtigt at du tjekker ejerskab af og rettighederne på filerne, da Drupals installationsprogram skal kunne læse og skrive en række filer. Som minimum skal webserveren (altså den bruger som webserveren kører under), kunne læse og skrive filerne.

Du skal som det første gå til folderen sites/default og kopiere filen default.settings.php til settings.php. Derefter skal du oprette en database og eventuelt en bruger i MySQL.

I databasen vil Drupal oprette en række tabeller under installationen. Bruger du et webhotel, har du uden tvivl fået udleveret både et databasebrugernavn, databasenavn samt en adgangskode.

Endeligt kan du køre Drupals installationsprogram ved at pege din browser på den URL, hvor dit website skal være. I mit tilfælde er det som sagt http://localhost/altomdata/. En wizard vil guide dig i gennem installationen, som ikke bør tage mere end 5 minutter.

Under installationen vil du blive bedt om et brugernavn (med tilhørende adgangskode) til en administrativ bruger. Med denne bruger kan du komme i gang med at bygge dit website op.

Bruger du Windows, findes er også gode programmer til udpakning. Endvidere skal du overføre alle filerne til din webserver (webhotel) med et ftp-program.

I mange tilfælde vil du få at vide, at clean URLs er ikke mulig med din nuværende Apache-server. Vi vil senere i denne artikel komme ind på dette igen.

Administration

Som antydet i begyndelsen af denne artikel, har Drupal er veludviklet system til håndtering af brugere og deres rettigheder og roller. Som administrativ bruger kan du let oprette nye brugere. Du finder menupunktet Users under Administer / User management.

Drupal er født med to roller til at begynde med. For mindre websites er det sikkert også rigeligt, men skal du opbygge større websites er det en god idé, at tilføje flere forskellige roller som for eksempel skribent, redaktør og moderator.

De to roller, som følger med en installation af Drupal er anonyme og autentikerede brugere. De anonyme brugere er de besøgende af websitet, som ikke har en konto. I grundindstillingerne kan anonyme brugere kun én ting: Læse indhold. Det betyder, at de besøgende kun kan se siderne, men ikke ændre på dem.

En autentikeret bruger er en besøgende, som har en konto. De kan lidt mere, for eksempel skrive kommentarer til sider. Drupal har mange andre rettigheder, som du kan tildele visse roller. Det er muligt at give en rolle adgang til at skrive indhold, mens det kræver en anden rolle at slette indhold. Endvidere er den en lang række administrative rettigheder til håndtering af brugere (oprettelse, nedlæggelse) og moduler.

Pænere URL'er

Det er sjældent at et CMS giver pæne og læslige URL'er. Du vil ofte se dem i retning af http://localhost/altomdata/?q=admin/user/permissions/2. Det er alt for besværligt til at det er muligt at huske dem, og sådan en URL ser ikke godt ud på papir.

Bruger du Apache som webserver, kan du med fordel bruge Apache-modulet mod_rewrite til at omskrive en pæn URL til noget Drupal kan forstå. Under installationen har du muligvis fået at vide, at Apache ikke understøtter Clean URLs. Grunden er med stor sandsynlighed, at din Apache ikke indlæser mod_rewrite under opstart. Det betyder, at du skal slå det til.

Har du adgang til en kommandolinje på din webserver, kan du afgøre det ved at udføre kommandoen apache2ctl –M, denne kommando opremser alle moduler. Finder du ikke en linje med rewrite_module, kan du med fordel udføre kommando a2enmod rewrite så modulet bliver slået til.

Kører din webserver Ubuntu Linux, kan det være at du skal være filen /etc/apache2/sites-enabled/000-default, linjen med AllowOverride None skal ændres til AllowOverride All. Endvidere skal du muligvis ændre filen .htaccess (bemærk punktum) i roden af din Drupal-installation. Der er en udkommenteret linje med RewriteBase som du skal have med og ændre så det passer med basis-URL'en på dit site.

I min installation på http://localhost/altomdata/ skal jeg have en linje med RewriteBase altomdata med. Husk lige at genstarte Apache, ellers vil alle dine ændringer ikke blive aktive. Du kan nu slå Clean URLs til under menupunktet Administer / Site configuration.

Næste gang

I første del af denne Drupal-serie har du set, hvordan du installerer systemet og udfører en mindre administrative opgaver. I næste afsnit vil vi gå i gang med at bygge et website op med indhold. Indholdet skal ikke kun være tekst, så vi vil gøre brug en af række moduler, som følger med systemet.

I tredje del af serien vil vi se på, hvordan Drupal kan give os rapporter om brug af vores website samt hvordan det er muligt at tilføje nye moduler. I sidste afsnit vil vi gå tættere på udvikling med Drupal, både med hensyn til temaer (themes, udseende af sider) og egne moduler.

[themepacific_accordion]
[themepacific_accordion_section title="Fakta"]

Få mere at vide

[/themepacific_accordion_section]
[themepacific_accordion_section title="Fakta"]

Opsætning af Apache

[/themepacific_accordion_section]
[/themepacific_accordion]