Drupal installeren

Hallo,
Ik zoek een programma om websites te maken, nu kwam na wat googlen ‘Drupal’ naar voren, alleen leek me deze nogal gecompliceerd om te installeren, aangezien deze voor zover ik weet niet in de repo’s staat. Bestaat er misschien een RPM van zodat het hele verhaal in een keer wordt geinstalleerd??

Bij voorbaat dank, Frank

Je hebt een aantal mogelijkheden:

  • Je maakt zelf alle html, daarvoor kun je bijv. komposer, quanta gebruiken, dat zijn WYSIWYG (What You See Is What You Get) HTML editors.
  • Je gebruikt een CMS (Content Management System),. bijv. Drupal, Joomla, Wordpress om maar eens wat bekende te noemen.

Mijn advies in deze is om voor de tweede optie te gaan. Je hebt dan een stuk minder HTML kennis nodig, dat doet het CMS voor je, en kunt op een Writer/Word-achtige manier de inhoud van je website maken. Ik ben zelf al jaren Joomla ontwikkelaar, d.w.z. dat ik er sites mee bouw, maar ook modules en componenten schrijf/aanpas waar ik dat nodig heb.
Één van de grote voordelen van linux is, dat je supereenvoudig lokaal, d.w.z. op je eigen PC of laptop, je site kunt bouwen en testen, en vervolgens met een paar simpele handelingen naar een webhoster kunt overzetten. Zo heb ik op dit moment (net geteld) 7 verschillende ontwikkelwebsites op mijn laptop staan. Als de klant een wijziging wil, hoef ik niet zijn site in de steigers te zettten, met alle zichtbaarheid voor bezoekers, dat doe ik op mijn laptop tot het klaar is, getest en akkoord voor de klant en dan zet ik in een paar minuten de wijzigingen/vernieuwingen over. Bezoekers merken dan niets, die hebben opeens nieuwe functionaliteit.
Eigenlijk is het lokaal draaien van een webserver daarvoor bittere noodzaak. Dat zou je dus eerst moeten leren. Dat begint met het installeren van de zgn LAMP (Linux, Apache, MySQL, PHP) server (geen machine, een softwarematige server, kan op elke willekeurige PC met linux). In Software beheer zie je onder Patronen dit ook staan. Daarna moet je Yast opnieuw opstarten en ziet bij Netwerk Services een nieuw item: HTTP-server. Die kun je bij het opstarten laten starten, en verder alle defaults laten voor wat ze zijn. En je zult MySQL even moeten laten starten en de basisconfiguratie (stelt ook niet zo veel voor, niet meer dan service laten starten en er een wachtwoord bij aanmaken) moeten doen. Voor het onderhoud/benaderen van de database die je nodig hebt kun je phpMyAdmin installeren via software.opensuse.org: Download openSUSE 12.1

Van Joomla, Drupal Nz zijn geen rpms. Is ook niet handig, je doet niets meer dan een zip bestand downloaden, dat uitpakken op de juiste plek, en vervolgens volgens de aanwijzigen die in een instructiebestand staan de installatie verrichten. Beide genoemde hebben grote communities en enorme hoeveelheden uitbreidingen en toevoegingen die je, gratis, maar ook betaald, kunt downloaden en toevoegen via een grafische omgeving. Als je een maandje bezig bent vraag je je af waar je tegenop gezien hebt.

Laat maar weten wat je het beste lijkt, een Joomla install daar help ik je op een avond doorheen. Drupal is niet zoveel anders, maar daar weet ik iets minder van. Ze hebben allebei dezelfde oorsprong: Mambo, de “moeder der CMS’en”.

Ik moet mijzelf corrigeren. Als je naar software.opensuse.org: Download openSUSE 12.1 gaat. en dan bij de zoekopties inschakelt dat de homes van ontwikkelaars/gebruikers meegenomen moeten worden, vindt je zowel joomla als drupal pakketten. Toch raad ik aan om zelf Joomla of Drupal te downloaden, laatste stabiele versie (in ieder geval Joomla is er in volledig nederlandse versie, via DutchJoomla! :: Voorpagina ). omdat je dan beter inzicht krijgt in waar de rotzooi precies staat, en dat heb je toch nodig. De rpms doen niets anders dan de zip file zelf uitpakken op de plek waar je dit handmatig ook zou doen.

ok, ik heb gekozen voor Joomla. ik heb de LAMP-benodigdheden geinstalleerd en Joomla uitgepakt op mijn /home-partitie, maar nu zul je toch even moeten helpen met hoe ik het werkende krijg…

Bij voorbaat dank, Frank

OK. Joomla staat nog niet op de goede plaats, maar daarover later. We moeten nu eerst je webserver configureren:

Start Yast - Net werkservices - HTTP-server,
klik “Aan” aan,
eronder moet staan 127.0.0.1 en poort 80.
Als je de firewall aan hebt, moet je de poort in de firewall openzetten. Klik op voltooien en je webserver draait,
wat te controleren is, door in Firefox het IP 127.0.0.1 in te typen. Als je alles goed gedaan hebt, zie je een witte pagina met “It works !”

Joomla maakt gebruik van een MySQL database. Daarom moet de MySQL service bij het opstarten aangezet worden.
Yast - Systeem - Runlevel editor. Scroll naar beneden in de lijst tot je mysqld ziet. Klik die aan en kies onderin het scherm “Acitveren”. De MySQL daemon start op een geeft daarover een melding. Klik op OK, en MySQL zal altijd starten bij het opstarten van je PC. Nu moet er nog een gebruiker aangemaakt worden in MySQL:
Bedenk een admin wachtwoord voor MySQL. NB de “root” user in MySQL is niet dezelfde als “root” op je systeem. Open een terminal venster en doe dit


su -
mysqladmin -u root -p "Jouw net bedachte wachtwoord"

en bevestig dat.

Als je phpMyAdmin nog niet geïnstalleerd hebt, dan moet je dat nu eerst doen.
Vervolgens ga je met Firefox naar "127.0.0.1/phpMyAdmin en logt in met “root” en “Jouw zelfbedachte wachtwoord”.
Maak een gebruiker met bijbehorende database aan, bij frankjeman. De gebruiker moet alle rechten krijgen op de database met dezelfde naam. Moet ik zelf ook altijd even in rondzoeken, maar daar kom je wel uit.

Nu ben je klaar om Joomla op de juiste plek te zetten, en te voorzien van de juiste rechten:
De map waar Joomla mu in staat noem ik hier even Joomla, jij moet daar de naam van de map in je homedir neerzetten. Open een terminal venster en doe:


su -
cp -r -v -p /home/frank/Joomla/* /srv/www/htdocs
rm /srv/www/htdocs/index.html
chown wwwrun /srv/www/htdocs/* -R
chgrp www /srv/www/htdocs/* -R

Ga nu naar “127.0.0.1/installation” en je ziet het Joomla installatiescherm. Voltooi de installatie. Daarna staat op 127.0.0.1 de voorkant van je website, op 127.0.0.1/administrator log je in op de achterkant/beheerskant van de website. Succes. Laat maar horen hoe 't gaat.

ok, ik heb de http-server toegevoegd in yast en de poort opengezet voor HTTP/Apache. Toch krijg ik als ik het IP in firefox intyp het volgende:

      Firefox can't establish a connection to the server at 127.0.0.1.

The site could be temporarily unavailable or too busy. Try again in a few
moments.
If you are unable to load any pages, check your computer’s network
connection.
If your computer or network is protected by a firewall or proxy, make sure
that Firefox is permitted to access the Web.

Wat doe ik verkeerd?

dank, Frank

Sorry, mijn fout, hij stond nog op ‘disabled’… nu zegt hij inderdaad ‘It Works!’…

dank, Frank

ik zit nu met het volgende probleem alweer:

linux-qhid:~ # mysqladmin -u root -p “frankyboy1211”
Enter password:
mysqladmin: connect to server at ‘localhost’ failed
error: ‘Access denied for user ‘root’@‘localhost’ (using password: YES)’
linux-qhid:~ #

Bij voorbaat dank, Frank

ok, so far so good, maar nu krijg ik aan het einde van de installatie van Joomla een boodschap dat ik de installatiemap moet verwijderen. als ik op die knop druk verschijnt er ‘fout’ en daaronder hetvolgende:

Uw configuratiebestand of map is niet schrijfbaar of er is een probleem bij het aanmaken hiervan. U dient volgende code handmatig te uploaden. Klik in het tekstvak om alle code te kopiëren, en plak de code in een nieuw bestand. Noem dit bestand ‘configuration.php’ en upload deze naar de rootmap van uw website.

Wat nu te doen?

Bij voorbaat dank, Frank

Aha, je bent dus al een heel eind gekomen, want anders kwam je niet eens aan het laatste stukje van de Joomla install toe :). Waar je nu bent. is waar je tenminste een draaiende webserver moet hebben en een toegankelijke database, dus dat lijkt allemaal gelukt. Ik hoop trouwens dat je daar waar je een password hebt gepost, in werkelijkheid iets anders hebt staan :P.

Eerst het belangrijkste, het aanmaken van de configuration.php, dit loopt stuk omdat het bestand er domweg niet is. Je kopiëert de code uit het tekstvak in een editor, zoals kwrite of gedit en slaat het bestand op in je homedir onder de naam configuration.php
Vervolgens open je een terminal venster en doe je dit:


su -
cd /srv/www/htdocs
cp /home/frank/configuration.php /srv/www/htdocs
chown wwwrun configuration.php
chgrp www configuration.php
mv installation installation.orig

Het laatste commando hernoemd de instalatiemap zodat die niet meer als zodanig herkend wordt door Joomla.
En dan zou het moeten werken, hartstikke mooi dat je er zo vlot doorheen gekomen bent. Als je slim bent, ga je nu eerst wat rondlezen over Joomla, en vooral ook rondkijken in het administrator gedeelte. Je kunt namelijk dan aan de voorkant zien welke gevolgen je acties hebben, bijv. voor menu’s etc. Als je zoekt via Google op “extensions joomla” kom je vanzelf op de verzamelsite voor allerlei componenten en modules terecht. Verdere hulp kun je ook in de Joomla forums vinden. EIgenlijk ben ik hier al aan het doen, waar ik normaal onder meer mijn geld mee probeer te verdienen: zelf CMS gebaseerde websites bouwen en onderhouden.

PS. Dit is echt het moment om eens rustig te kijken hoe de boel nou in elkaar zit en wat de linux commando’s doen. Vooral “chmod” en “chgrp” zul je nog wel’s nodig hebben. En phpMyAdmin, vooral omdat je daar heel makkelijk backups van je database kunt maken, zodat je in geval van fouten die je maakt steeds kleine stapjes terug kunt.

ok, bedankt tot zover voor de gratis hulp. Ik kan nu alleen niet meer in het installatiescherm van Joomla komen, ik krijg de volgende boodschap:

Access forbidden!

You don’t have permission to access the requested directory. There is either no index document or the directory is read-protected.

If you think this is a server error, please contact the webmaster.
Error 403
127.0.0.1
Mon Feb 6 08:07:03 2012
Apache/2.2.21 (Linux/SUSE)

De installatie van Joomla had je toch al afgerond? Zo niet, of als je die opnieuw wilt doen:


su -
cd /srv/www/htdocs
mv installation.orig installation
chown wwwrun * -R
chgrp www * -R

De installatiemap is nu hernoemd naar de originele naam, de rechten zijn weer toegewezen aan de webuser wwwrun en de webgroup www. Ook zet ik in een locale omgeving meestal de map htdocs helemaal open, dan krijg je iets minder snel foutmeldingen, moet je op het web niet doen:


su -
cd /srv/www
chmod 777 htdocs

Ik krijg nu de melding: installation.orig: no such file or directory vreemd…

dank, Frank


ls -l /srv/www/htdocs

Dat geeft het volgende:

frank@linux-qhid:~> ls -l /srv/www/htdocs
total 124
drwxr-xr-x 10 wwwrun www 4096 Sep 26 09:11 administrator
drwxr-xr-x 2 wwwrun www 4096 Sep 26 09:12 cache
drwxr-xr-x 2 wwwrun www 4096 Sep 26 09:12 cli
drwxr-xr-x 12 wwwrun www 4096 Sep 26 09:12 components
-rw-r–r-- 1 wwwrun www 302 Mar 13 2006 favicon.ico
drwxr-xr-x 2 wwwrun www 4096 Nov 10 17:15 gif
-rw-r–r-- 1 wwwrun www 3189 Apr 7 2011 htaccess.txt
drwxr-xr-x 4 wwwrun www 4096 Sep 26 09:12 images
drwxr-xr-x 2 wwwrun www 4096 Sep 26 09:12 includes
-rw-r–r-- 1 wwwrun www 1389 Feb 21 2011 index.php
-rw-r–r-- 1 wwwrun www 2356 Oct 23 01:32 info2html.css
drwxr-xr-x 2 wwwrun www 4096 Feb 5 19:50 installation
-rw-r–r-- 1 wwwrun www 1553 Nov 13 18:02 joomla.xml
drwxr-xr-x 5 wwwrun www 4096 Sep 26 09:12 language
drwxr-xr-x 7 wwwrun www 4096 Sep 26 09:12 libraries
-rw-r–r-- 1 wwwrun www 17816 Dec 12 2009 LICENSE.txt
drwxr-xr-x 2 wwwrun www 4096 Sep 26 09:12 logs
drwxr-xr-x 8 wwwrun www 4096 Sep 26 09:11 media
drwxr-xr-x 25 wwwrun www 4096 Sep 26 09:12 modules
drwxr-xr-x 7 wwwrun www 4096 Feb 5 15:14 phpMyAdmin
drwxr-xr-x 10 wwwrun www 4096 Sep 26 09:12 plugins
-rw-r–r-- 1 wwwrun www 4244 Sep 25 12:00 README.txt
-rw-r–r-- 1 wwwrun www 865 Sep 20 06:37 robots.txt
drwxr-xr-x 6 wwwrun www 4096 Sep 26 09:12 templates
drwxr-xr-x 2 wwwrun www 4096 Sep 26 09:12 tmp
-rw-r–r-- 1 wwwrun www 1811 Apr 7 2011 web.config.txt
frank@linux-qhid:~>

Post output alsjeblieft tussen CODE tags. Staat wel in de klevende onderwerpen, anders even zoeken. Dit is vreselijk onleesbaar.

De map “installation” is nooit hernoemd, kun je dus ook niet terug hernoemen. En de file configuration.php zie ik ook nergens staan. Graag output van:


ls -ld /srv/www/htdocs

Ik zit vanmiddag de hele middag in bespreking en, lach niet, een traininkje “Opzetten webserver voor Joomla” (op openSUSE), wat je evt. kunt doen, is de map /srv/www/htdocs leegmaken, en de instructies opnieuw uitvoeren, met deze toevoeging, meteen uit te voeren na het uitpakken van de Joomla zipfile:


su -c 'touch /srv/www/htdocs/configuration.php'
su -c 'chmod 666 /srv/www/htdocs/configuration.php'

Op die manier vindt het Joomla installatieprogramma het missende bestand, dat op dat moment voor alles en iedereen schrijfbaar is.

output:

frank@linux-qhid:~> ls -ld /srv/www/htdocs
drwxr-xr-x 19 root root 4096 Feb  5 19:46 /srv/www/htdocs
frank@linux-qhid:~> 

ok, het werkt nu! Ik kwam erachter dat het niet 127.0.0.1/admin moet zijn, maar ‘administrator’. Klein detail…:stuck_out_tongue:

Bedankt, Frank

Groots !!! Veel plezier ermee, en geniet ervan. Drupal gaat basaal niet anders. En Wordpress ook niet. Moet je alleen niet in dezelfde map plaatsen. Wat ik meestal doe, is in /srv/www/htdocs een map aanmaken, en daar de Joomla installatie inzetten. Je benadert die specifieke omgeving dan met 127.0.0.1/MAPNAAMDIEJEBEDACHTHEBT.

Op de een of andere manier verschijnt er geen site op 127.0.0.1, er blijft staan ‘it works’, terwijl ik er eigenlijk graag om te beginnen een template zou willen…

grtn, Frank