UAPP
Uit Yapf
Inhoud |
Ubuntu + Apache + PHP + Postgresql
Installeer postgreSQL, apache en php5:
sudo apt-get install postgresql apache2 php5 php5-pgsql libapache2-mod-php5
Zet onder apache de modules voor php5, rewrite en virtualhosting aan:
sudo a2enmod php5 rewrite vhost_alias
Herlaad apache om de nieuwe configuratie actief te maken:
sudo /etc/init.d/apache2 reload
Apache veranderen
Dynamic virtual hosting
Apache kan op naambasis virtual hosten. Dit betekent dat de naam waaronder een website te vinden is wordt opgebouwd uit onder andere de naam van de directory waar de documentroot staat. (of omgekeerd, tis maar hoe je het bekijkt).
In ontwikkelomgevingen is dat bijzonder prettig omdat je een URLstructuur kunt opbouwen zoals: ontwikkelaar.project.klantnaam.ontwikkelserver.nl en dat de documentroot daarvan te vinden is op /hosts/www/klantnaam/project/ontwikkelaar/www/ (de volgorde van namen is hier puur toevallig omgekeerd, dat is geen vereiste)
Hierdoor krijg je overzicht in je documementroot, en de url waarop een site te zien is eenvoudig voorspelbaar.
Virtualhosting configureren is zo simpel als de vlgende twee regels opnemen in het virtualhost blok van een siteconfiguratie van apache:
UseCanonicalName Off VirtualDocumentRoot /www/hosts/%0/www
Hierin is /www/hosts/ een pad naar ee directory waar je de documentroots wilt bewaren. %0 staat voor de domeinnaam waaronder je de site oproept, en /www is een subdirectory zodat je ook bestanden buiten de documentroot kunt bewaren en toch alles in dezelfde site-specifieke directories staat.
Mod rewrite
Om de rewrite engine te gebruiken moet er een .htaccess bestand worden gemaakt met daarin:
RewriteEngine on
Standaard is apache zo geconfigureerd dat hij alle .htaccess bestanden negeert. Om dit aan te passen moet je in de sites-available directory het bestand van je site(s) aanpassen om AllowOverride van None naar All te zetten. Noot! De instelling All is niet het veiligst. Lees hoe allowoverride werkt en stel het in op wat voor jou nodig is.