V dnešním článku se budeme zabývat kroky, jak nainstalovat zásobník LAMP (Linux Apache MySQL a PHP) na VPS založené na CentOS 6.
LAMP představuje plnohodnotný stack obsahující nejpopulárnější webový server známý jako Apache, nejpopulárnější databázový server MySQL a nejoblíbenější open-source webový programovací jazyk známý jako PHP.
Tento článek ukazuje, jak nastavit LAMP na CentOS 6 VPS, ale postup je velmi podobný pro virtuální servery založené na Fedora Linux a Scientific Linux. První věc, kterou musíme udělat, je ujistit se, že je náš systém plně aktuální . Spuštěním níže uvedeného příkazu se tedy nainstalují všechny dostupné aktualizace:
# yum update -y
Poté, co „yum“ dokončí aktualizaci vašeho systému, pokračujte v instalaci Apache. Protože je k dispozici jako balíček v oficiálních repozitářích CentOS, instalace Apache vypadá takto:
# yum install httpd -y
po dokončení instalace přidejte apache do spouštění systému :
# chkconfig --levels 235 httpd on
a nakonec jej spusťte :
# service httpd start
Nyní přejděte na http://yourdomain.tld a ve vašem prohlížeči by se měla zobrazit výchozí stránka Apache.
Dalším krokem je instalace PHP jako modul Apache (mod_php), takže můžete spouštět PHP skripty pod webovým serverem Apache. Chcete-li to provést, postupujte takto:
# yum install php -y
po instalaci vytvořte informační stránku PHP v kořenovém adresáři dokumentů Apache (/var/www/html), abyste si mohli ověřit, zda je ve vašem systému povolena podpora PHP.
# echo -e "<?php\n\tphpinfo();\n?>" > /var/www/html/info.php
jakmile je soubor info.php vytvořen, znovu načtěte apache, aby se nově nainstalovaný modul PHP mohl projevit.
# service httpd restart
Nyní otevřete tento soubor test.php ve svém prohlížeči (http://yourdomain.tld/info.php) a měli byste vidět různé informace o vaší instalaci PHP.
Pokud chcete mít ve svém PHP další moduly PHP, například podporu mysql, musíte nainstalovat odpovídající modul PHP pro MySQL. Balíček se jmenuje „php-mysql“ a lze jej snadno nainstalovat pomocí „yum“. Níže je uveden seznam dostupných modulů PHP:
php-bcmath => A module for PHP applications using the bcmath library php-cli => Command-line interface for PHP php-common => Common files for PHP php-dba => A database abstraction layer module for PHP applications php-devel => Files needed for building PHP extensions php-embedded=> PHP library for embedding in applications php-enchant => Human Language and Character Encoding Support php-gd => A module for PHP applications using the gd graphics library php-imap => A module for PHP applications that use IMAP php-intl => Internationalization extension for PHP applications php-ldap => A module for PHP applications that use LDAP php-mbstring => A module for PHP applications which need multi-byte string handling php-mysql => A module for PHP applications that use MySQL databases php-odbc => A module for PHP applications that use ODBC databases php-pdo => A database access abstraction module for PHP applications php-pear.noarch => PHP Extension and Application Repository framework php-pecl-apc => APC cache optimizing PHP intermediate code php-pecl-memcache => Extension to work with the Memcached caching daemon php-pgsql => A PostgreSQL database module for PHP php-process => Modules for PHP scripts using system process interfaces php-pspell => A module for PHP applications using pspell interfaces php-recode => A module for PHP applications using the recode library php-snmp => A module for PHP applications that query SNMP-managed devices php-soap => A module for PHP applications that use the SOAP protocol php-tidy => Standard PHP module provides tidy library support php-xml => A module for PHP applications which use XML php-xmlrpc => A module for PHP applications which use the XML-RPC protocol php-zts => Thread-safe PHP interpreter for use with the Apache HTTP Server
tak si vyzvedněte ty, které potřebujete, a nainstalujte je pomocí ‚yum‘, například:
# yum install php-cli php-common php-gd php-mysql -y
nainstaluje rozhraní příkazového řádku PHP, běžné soubory PHP a podporu MySQL pro PHP. Nezapomeňte znovu načíst Apache, aby se nové moduly mohly projevit:
# service httpd restart
Dále se chystáme nainstalovat server MySQL . Toho lze dosáhnout takto:
# yum install mysql mysql-server -y
poté jej přidejte do spouštění systému a spusťte server MySQL pomocí následujících příkazů:
# chkconfig --levels 235 mysqld on # service mysqld start
Po jeho spuštění se doporučuje nastavit heslo „root“ MySQL , zakázat vzdálené přihlášení root , odeberte anonymní uživatele a odeberte ‚testovací‘ databázi . To lze snadno provést spuštěním skriptu „mysql_secure_installation“ MySQL. Takže proveďte:
# mysql_secure_installation
a po výzvě stiskněte „ENTER“.
S tím vším na svém místě máte funkční zásobník LAMP na vašem CentOS 6 . Dobrý nápad je nainstalovat phpMyAdmin takže můžete snadno spravovat své databáze MySQL přes pěkný frontend napsaný v PHP. Pokračujte tedy v instalaci phpMyAdmin pomocí následujících příkazů:
(v době psaní tohoto článku je nejnovější verze phpMyAdmin 3.5.1. Vždy můžete přejít na http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/ a nainstalovat nejnovější dostupnou verzi)
# wget -P /tmp http://prdownloads.sourceforge.net/phpmyadmin/phpMyAdmin-3.5.1-english.tar.gz # tar -zxf /tmp/phpMyAdmin*.tar.gz -C /var/www/html/ # mv /var/www/html/phpMyAdmin-3.5.1-english /var/www/html/dbAdmin # cd /var/www/html/dbAdmin # cp config.sample.inc.php config.inc.php
Poslední věc, kterou byste měli udělat, je otevřít konfigurační soubor phpMyAdmin:
# vim config.inc.php
a změňte následující řádek:
$cfg['Servers'][$i]['auth_type'] = 'cookie';
s
$cfg['Servers'][$i]['auth_type'] = 'http';
uložte soubor a přejděte na http://yourdomain.com/dbAdmin, kde se můžete přihlásit pomocí svého „root“ uživatele MySQL a jeho hesla.
Než dokončíme nastavení, je doporučenonainstalovat nějaký PHP cache engine takže může dělat nějaké ukládání do mezipaměti a určitě to urychlí. Takže nainstalujte mezipaměť PHP APC provedením:
# yum install php-pecl-apc -y
Výchozí nastavení APC je v pořádku, ale pokud chcete maximální výkon, doporučujeme jej nakonfigurovat podle vašich potřeb. Pro CentOS 6 VPS s 512 MB RAM je následující konfigurace APC optimální a funguje perfektně. Takže upravte/vytvořte ‘/etc/php.d/apc.ini’ obsahující následující možnosti:
extension=apc.so apc.enabled = 1 apc.shm_segments = 1 apc.shm_size = 32M apc.optimization = 0 apc.num_files_hint = 512 apc.user_entries_hint = 1024 apc.ttl = 0 apc.user_ttl = 0 apc.gc_ttl = 600 apc.cache_by_default = 1 apc.filters = "apc\.php$" apc.slam_defense = 0 apc.use_request_time = 1 apc.mmap_file_mask = /tmp/apc-CentOS.XXXXXX ;OR apc.mmap_file_mask = /dev/zero apc.file_update_protection = 2 apc.enable_cli = 0 apc.max_file_size = 2M apc.stat = 1 apc.write_lock = 1 apc.report_autofilter = 0 apc.include_once_override = 0 apc.rfc1867 = 0 apc.rfc1867_prefix = "upload_" apc.rfc1867_name = "APC_UPLOAD_PROGRESS" apc.rfc1867_freq = 0 apc.localcache = 1 apc.localcache.size = 512 apc.coredump_unmap = 0 apc.stat_ctime = 0
a nakonec znovu načtěte Apache, aby se změny projevily. Udělejte to spuštěním:
# service httpd restart
To je vše, pokud jde o instalaci zásobníku LAMP. V některých z dalších článků však popíšeme, jak můžete použít zásobník LAMP k hostování více domén pomocí „směrnic virtuálního hostitele“ Apache, protože jsme vám ukázali, jak nastavit nového virtuálního hostitele na vašem serveru Nginx. Popíšeme také, jak povolit SSL (secure socket layer) pro vaše webové stránky, takže zůstaňte naladěni. Případně si můžete přečíst tuto příručku Instalace LAMP (Linux Apache MariaDB a PHP) pomocí phpMyAdmin na Fedoře 20 pro aktualizace.
PS. Pokud se vám tento příspěvek líbil, sdílejte jej se svými přáteli na sociálních sítích pomocí tlačítek vlevo nebo jednoduše zanechte odpověď níže. Děkuji.