dum | žák

Linux

Název školy Vyšší odborná škola obalové techniky a Střední škola, Štětí, příspěvková organizace
Adresa školky Kostelní 134, 411 08 Štětí
46773509
Název operačního programu OP Vzdělávání pro konkurenceschopnost
Registrační číslo CZ.1.07/1.5.00/34.1006
Označení vzdělávacího materiálu
Název tématické oblasti (sady) Operační systémy
Název materiálu LAMP
Anotace
Autor Ivan Pomykacz Jazyk český
Očekávaný výstup
Klíčová slova
Druh výukového zdroje Výklad Věková skupina žáků 17+
Typ interakce aktivita Ročník 4.
Speciální vzdělávací potřeby žádné
Zhotoveno, (datum/období) Celková velikost

pdf icon
LAMP

Obsah

LAMP je označení pro běhové prostředí - ekosystém - pro webové aplikace. Jaký je rozdíl mezi "klasickou" (desktopovou) a webovou aplikací?

Desktopové aplikace - jeden příklad za všechny: webový prohlížeč

  • Je třeba instalovat na každý počítač, kde chceme aplikaci používat.

  • Je vhodné udržovat aplikaci aktuální.

  • Je platformově závislá - aplikace běžící v Linuxu nepůjde spustit v MS Windows nebo OS X.

  • Kód aplikace se spouští na lokálním procesoru - odezva je zpravidla okamžitá.

  • Pro spuštění aplikace není třeba být on-line.

Webová aplikace - jeden příklad za všechny: Moodle

  • Instaluje se pouze jednou, a to na serveru, což uživatel vůbec neřeší.

  • O aktualizace se stará administrátor serveru (aplikace).

  • Je nezávislá na platformě.

  • Kód se spouští na serveru a k uživateli se posílá přes síť už jenom výsledek - odezva je v řádech mss.

  • Pro spuštění aplikace je nezbytné být on-line.

Rejpalové nechť neřeší, že i desktopové aplikace mohou být multiplatformní, že desktopové aplikace lze spouštět i ze serveru, že webové aplikace využívají Javascript, který se spouští lokálně, a že i webové aplikace mohou být off-line.

Zkratka LAMP znamená: Linux Apache MySQL PHP.

  • Místo L lze dosadit i W - Windows nebo M - Mac OS.

  • Na místo webového serveru Apache si lze dosadit třeba Lighttpd nebo Nginx, případně IIS (pouze MS Sindows).

  • MySQL je původní název pro databázový server, ještě před akvizicí firmou Oracle. MySQL je i nadále udržován firmou Oracle, ale vznikl nový fork původního serveru pod názvem MariaDB. Další alternativy jsou např.: PostgreSQL, MongoDB nebo MS SQL (pouze MS Windows).

  • PHP, sice nejrozšířenější skriptovací jazyk, ale i ten lze nahradit např.: Ruby, Python nebo ASP .NET (pouze MS Windows).

Instalace

Celé běhové prostředí se skládá z několika aplikací, které je třeba nainstalovat v závislosti na tom, jakou webovou aplikaci chceme provozovat. Např. Moodle je napsaný pro PHP a umí komunikovat s databází MariaDB / MySQL. Apache není nezbytný, ale je vhodný, stejně jako Linux.

V tomto textu ještě nebudeme instalovat systém Moodle, ale postupně si ukážeme jednotlivé součásti ekosystému LAMP a sice, že mohou fungovat i nezávisle na sobě.

Webový server - Apache

Instalaci provedeme klasickým způsobem přes správce balíčků "apt-get". Název balíčku je apache2.

Po instalaci je služba webového serveru ihned aktivní a lze si tento stav ověřit ve webovém prohlížeči, kam zadáme IP adresu počítače, kde Apache běží. Pokud byste webový server instalovali na lokální počítač, pak můžete do adresního řádku zadat http://localhost.

Měla by se zobrazit obligátní hláška: It works!

Databázový server - MySQL

Instalační balíček nese název: mysql-server.

Během instalace budete vyzvání k zadání hesla pro uživatele root - pozor, toto není stejný uživatel jako root z Linuxu. Databázový server MySQL má vestavený systém přístupových práv k databázím/tabulkám a shodou okolností používá stejný název pro administrátora.

Po instalaci je server již spuštěný, takže je možné se k němu okamžitě připojit. V systému je k dispozici i klient, kterým můžeme ověřit funkčnost.

    root@wheezy:~# mysql -u root -p

Po zadání hesla se spustí řádkový klient SQL databáze:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 43
Server version: 5.5.40-0+wheezy1 (Debian)

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

Příkazem: show databases si můžeme nechat vypsat existující databáze:

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)

Příkazem quit práci se serverem ukončíme.

Skriptovací jazyk - PHP

Instalační balíček se jmenuje: php5. Společně s ním je ovšem nezbytné nainstalovat je rozšiřující modul pro práci s databází MySQL. Ten se jmenuje: php5-mysql.

Pro ověření toho, zda-li PHP funguje, tj. zda-li Apache spustí naše PHP skripty vytvoříme jednoduchý skript, který necháme následně webovým serverem spustit.

Příkazem nano vytvořme soubor /var/www/test.php, do kterého vložme následující kód.

<?php
 
phpinfo();
 

Zadáme-li nyní do prohlížeče ještě název právě vytvořeného souboru, server spustí jeho kód a vrátí výsledek. Opět, pokud vám běží webový server na lokálním stroji, pak stačí místo IP adresy zadat localhost, např.: http://localhost/test.php.