LAMP
Lyhenne LAMP tarkoittaa:
- Linux-käyttöjärjestelmä
- Apache-säätiön http-palvelin
- MySQL-tietokanta
- PHP-skriptikieli (joskus myös Perl tai Python)
Lyhennettä käytetään kuvaamaan erittäin yleistä web-palvelinteknologian kokoonpanoa, jossa palvelinkoneen käyttöjärjestelmänä on Linux, palvelinohjelmistona Apache, tietokantaohjelmistona on MySQL ja dynaamisuuden ja vuorovaikutteisuuden mahdollistavana palvelinpuolen skriptikielenä tyypillisimmin PHP. LAMP on saatavilla kutakuinkin jokaisesta palvelinhotellipaketista, sillä on mahdollista toteuttaa huomattavan mutkikkaita ja monipuolisia verkkopalveluja (esim. Facebook tehtiin LAMP:lla alussa) ja se onkin ollut pitkään hyvin suosittu.
On syytä huomata, että kyseessä on ainoastaan selventävä termi, eikä vaikkapa ohjelmien välinen yhteyskäytäntö. Yhdistelmälle on annettu nimi, koska sitä käytetään melko paljon ja se on havaittu toimivaksi. Samalla idealla on kehitetty muitakin lyhenteitä kuten Solaris-pohjainen SAMP ja Windows/IIS-yhdistelmään pohjautuva WIMP.
LAMP-ympäristön asennus omalle koneelle
Seuraavassa lyhyt yhteenveto miten LAMPin voi pystyttää.
- Asenna Ubuntu 16.04 LTS (hyvin suosittu ja helppokäyttöinen Linux, ja sen pitkäaikaisen tuen versio, jonka palvelinohjelmistoille on taattu tietoturvapäivitykset vuoteen 2021 saakka)
- Avaa pääte ja aja sudo apt-get install php php-mysql mysql-server, mikä asentaa em. ohjelmat ja kaikki niiden riippuvuudet, mukaan lukien Apache-palvelimen:
$ sudo apt-get install php php-mysql mysql-server
Luetaan pakettiluetteloita... Valmis Muodostetaan riippuvuussuhteiden puu Luetaan tilatiedot... Valmis Seuraavat ylimääräiset paketit on merkitty asennettaviksi: libaio1 libhtml-template-perl mysql-client-5.7 mysql-client-core-5.7 mysql-server-5.7 mysql-server-core-5.7 php7.0 php7.0-fpm php7.0-mysql Ehdotetut paketit: libipc-sharedcache-perl tinyca php-pear Seuraavat UUDET paketit asennetaan: libaio1 libhtml-template-perl mysql-client-5.7 mysql-client-core-5.7 mysql-server mysql-server-5.7 mysql-server-core-5.7 php php-mysql php7.0 php7.0-fpm php7.0-mysql 0 päivitetty, 12 uutta asennusta, 0 poistettavaa ja 1 päivittämätöntä. Noudettavaa arkistoa 19,6 Mt. Toiminnon jälkeen käytetään 165 M t lisää levytilaa. Haluatko jatkaa? [K/e]
- Asennusvaiheessa pyydetään asettamaan MySQL:n pääkäyttäjälle (root) salasana. Laita se muistiin.
- Käynnistä Apache uudestaan, jotta PHP varmasti aktivoituu: sudo /etc/init.d/apache2 restart
- Tarkista Apachen toimivuus selaimella (http://127.0.0.1/ tai http://localhost/)
- Nyt voit laittaa PHP-skriptin kansioon /var/www/. Aja komento sudo nano /var/www/testi.php ja kirjoita tiedoston sisällöksi:
<?php echo "Testi toimii!"; ?>
- Tallenna painamalla Ctrl+X ja ↵ Enter (K=kyllä)
- Avaa selaimella http://localhost/testi.php. Jos näet vain tekstin, niin PHP toimii. Jos selain yrittää ladata kokonaisena tiedostona sivun, PHP-skriptiä ei ajettu.
Wordpress
Lisäharjoituksena voit asentaa Wordpressin, joka on PHP:lla ja MySQL:llä toimiva blogiohjelmisto. Aloita komennolla sudo apt-get install wordpress
$ sudo apt-get install wordpress Luetaan pakettiluetteloita... Valmis Muodostetaan riippuvuussuhteiden puu Luetaan tilatiedot... Valmis Seuraavat ylimääräiset paketit on merkitty asennettaviksi: javascript-common libjs-cropper libjs-prototype libjs-scriptaculous libphp-phpmailer libphp-snoopy libt1-5 php-gettext php5-gd tinymce wordpress-l10n wwwconfig-common Ehdotetut paketit: mail-transport-agent curl postgresql-client apache apache-ssl Seuraavat UUDET paketit asennetaan: javascript-common libjs-cropper libjs-prototype libjs-scriptaculous libphp-phpmailer libphp-snoopy libt1-5 php-gettext php5-gd tinymce wordpress wordpress-l10n wwwconfig-common 0 päivitetty, 13 uutta asennusta, 0 poistettavaa ja 3 päivittämätöntä. Noudettavaa arkistoa 8 107kt. Toiminnon jälkeen käytetään 30,4M t lisää levytilaa. Haluatko jatkaa [K/e]?
Jatka asennusta ohjetiedoston /usr/share/doc/wordpress/README.Debian mukaan.
LAMPista eteenpäin
LAMP ei tänä päivänä enää edusta parasta mahdollista teknologiaa. Apachen kanssa kilpailee moni uusi paljon nopeampi palvelinohjelmisto (esim. NodeJS ja Nginx), Oracleen haltuun siirtynyt MySQL häviää MariaDB:lle ja PostgreSQL:lle ja ohjelmointikielipuolella on nykyisin suositumpaa käyttää JavaEE:tä, Ruby on Railsia tai Pythonia (esim. Djangon kanssa).
Katso myös
Aiheesta muualla
- https://en.wikipedia.org/wiki/Apache_HTTP_Server
- http://www.lampware.org/
- Asenna LAMP Ubuntuun - Ohje vaihe vaiheelta
Palvelin | |
Ylläpito | SSH | Tietoturva | Käyttäjien hallinta | Systemd | iptables | Security-Enhanced Linux | AppArmor |
---|---|
Palvelintyypit | Web-palvelin | Sähköposti | Tietokanta | NFS | Samba |
Komentorivi | Komentorivin perusteet | Komentorivikomennot | Bash-skriptaus |
Tekstieditoreja | nano | vi | emacs |
Palvelin-luokka |