Een LAMP-omgeving installeren op Debian en derivaten

Deze tutorial legt uit hoe je een ontwikkelomgeving installeert LAMP. Maar wat is dat van LAMP? LAMP is een afkorting voor Linux + Apache2 + PHP5 + MySQL, dat wil zeggen, een omgeving om scripts te schrijven, sites te onderhouden of in te stellen die zijn gemaakt of geschreven PHP met MySQL op een Apache-server.

De kwestie in handen krijgen ...

We installeren Apache2

server@host:# apt-get install apache2 apache2-doc

Basis Apache-gebruik:

server@host:# /etc/init.d/apache2 {start|stop|restart|reload|force-reload}

Nu, hoe vertel je Apache2 om de modules te gebruiken die we hebben geïnstalleerd?

Bewerken /etc/apache2/apache2.conf en toevoegen:

<IfModule dir_module>
DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl index.xhtml
</IfModule>

Modules toevoegen:

Kan gevonden worden in / usr / lib / apache2 / modules /

Bijvoorbeeld: Mod_Rewrite overschrijf URL's om ze gebruiksvriendelijker te maken.

Toevoegen /etc/apache2/apache2.conf:

LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so

Een meer elegante manier kan zijn, vanaf de opdrachtterminal het inschakelen met het volgende commando:

server@host:# a2enmod rewrite

En start Apache opnieuw:

server@host:# /etc/init.d/apache2 restart

PHP5 Installatie / Configuratie

server@host:# apt-get install libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd php5-idn php-pear php5-imagick php5-imap php5-json php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

Enkele wijzigingen in PHP 5

En /etc/php5/apache2/php.ini:

Upload bestanden naar server [grootte]:

upload_max_filesize = 8M

Geheugengebruik:

memory_limit = 32M

Upload bestanden, POST-methode:

post_max_size = 8M

Start, herstart PHP 5?

PHP 5 draait op het systeem als een Apache2-module, dus als we een configuratie uitvoeren in PHP5 door Apache opnieuw te starten, worden de aangebrachte wijzigingen toegepast.

MySQL installatie / configuratie

server@host:# apt-get install mysql-server

Tijdens de installatie wordt u om het wachtwoord voor de MySQL-rootgebruiker gevraagd, probeer om veiligheidsredenen het anders te maken dan het root-wachtwoord van het systeem.

Basisgebruik van MySQL:

server@host:# /etc/init.d/mysql {start|stop|restart|reload|force-reload|status}

En in de instellingen [/etc/mysql/my.cnf, regel 71 ongeveer] schakelen we het verwijderen van commentaar in de logboeken in:

log  /var/log/mysql/mysql.log

En vervolgens MySQL opnieuw opstarten om de wijzigingen door te voeren ...

server@host:# /etc/init.d/mysql restart

Installatie / configuratie van PHPMyAdmin

server@host:# apt-get install phpmyadmin

En de configuratie komt in het bestand config.inc.php, dat er niet is, maar we zullen het maken met de volgende inhoud:

<?php
$cfg['blowfish_secret'] = 'phpmyadmin';
$i = 0;
$i++;
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['extension'] = 'mysql';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
?>

Virtualhosting

Het is een methode waarmee meerdere websites [met verschillende domeinnamen] onder hetzelfde IP-adres kunnen worden gepubliceerd. Hiermee kunt u geheugen en processorcycli [Hz] efficiënter delen.

Apache2-opdrachten voor VirtualHosting:

  • a2ensite: Activeer een website. De configs moeten binnen zijn / etc / apache2 / sites beschikbaar /
  • a2dissite: een website deactiveren.
  • a2enmod: Activeert een apache-module die beschikbaar is in / etc / apache2 / mods-beschikbaar /
  • a2dismod: Deactiveer een module.

Maak een virtualhost

We maken het VirtualHost-configuratiebestand:

server@host:# cd /etc/apache2/sites-available/
server@host:/etc/apache2/sites-available# touch blog.example.com

We maken de map waar de website komt ...

server@host:# mkdir -p /var/www/blog/

Blog.example.com-configuratie:

<VirtualHost *:80>
ServerAdmin admin@blog.example.com
ServerName blog.example.com
DocumentRoot /var/www/blog/
# HTML documents, with indexing.
<Directory />
Options +Includes
</Directory>
</VirtualHost>

We maken mogelijk:

server@host:# a2ensite blog.example.com

En toen? Zeker, het happy end:

server@host:# /etc/init.d/apache2 restart

notitie: We moeten met onze netwerkbeheerder praten, als we beter zijn, om een ​​A-record in de DNS toe te voegen dat naar ons IP-adres verwijst met de naam "blog”. Dit moet worden gedaan om alle DNS-peilingen van blog.example.com naar onze pc om te leiden.

Dan schrijven we gewoon in onze browser:

http://blog.example.com

En we krijgen toegang tot de betreffende site.

Het blijft alleen om een ​​WordPress of een Drupal op deze virtualhost te installeren, als we het gaan ontwikkelen, vanaf nul of een framework.

Dat is alles, tot ziens om door te gaan met het installeren / configureren van services op GNU / Linux-systemen.