Ahoz, hogy statikus honlapokat is futtathassunk a szerverünkön nincs szükség ezekre a szolgáltatásokra, azonban ha dinamikus honlapokat is hostolunk, akkor elengedhetetlen a telepítésük!
Telepítés:
apt-get install mysql-server mysql-clientapt-get install apache2apt-get install php5 libapache2-mod-php5service apache2 restartnano /var/www/html/info.php
<?php
phpinfo();
?>Előfordulhat, hogy honlapunkon rövidített php tageket használunk(<? «php kód» ?>), ebben az esetben engedélyeznünk kell a rövidített tag-k használatát, a
php7 esetén:
sudo nano /etc/php/php7.0/apache2/php.iniphp5 esetén:
sudo nano /etc/php5/apache2/php.inikonfugurációs fájlokban:short_open_tag=Onphp verziók engedélyezése/tiltása: a2enmod(engedélyezés)/a2dismod(tiltás)
sudo a2dismod php5 ; a2enmod php7.0 ; sudo service apache2 restart
Segédeszköz a MYSQL: phpmyadmin
Telepítése:
sudo apt-get install phpmyadminválasszuk az apache2 -t majd next....
beállítás: nano /etc/apache2/apache2.conf
Include /etc/phpmyadmin/apache.conf
sudo service apache2 restarthttp://ipcím/phpmyadmin -ról elérhető a szolgáltatás webes felülete!
Virtual Host: Egyetlen szerveren több honlapot is futtathatunk ehez domainként létre kell hoznunk a konfigurációs fájlokat, majd engedélyeznünk is kell azokat.
A konfigurációs fájlok a /etc/apache2/sites-available/ mappában találhatóak, itt találjuk az alapértelmezett "sémaként is szolgáló" fájlt, a 000-default.conf -t.
Ahhoz, hogy egy domaint egy adott mappához csatoljunk, elegendő ebből egy másolatot készítenünk és annak módosított változatát engedélyeznünk.
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/mydomainname.hu.confsudo nano /etc/apache2/sites-available/mydomainname.hu.conf
<VirtualHost *:80>
ServerName www.mydomainname.hu
ServerAlias mydomainname.hu
ServerAdmin webmaster@localhost
# a weblapunk elérési helye
DocumentRoot /mnt/HDD/Sites/MyDomain
<Directory "/mnt/HDD/Sites/MyDomain">
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>engedélyezzük a konfigurációs fájlt:
sudo a2ensite mydomainname.hu.confsudo service apache2 restart
LAMP stack: Apache2, PHP, MySQL és phpMyAdmin telepítése
Klasszikus webszerver-csomag dinamikus PHP-alapú weboldalak és adatbázis-vezérelt alkalmazások (pl. CMS-ek) futtatásához.
MySQL telepítése
apt-get install mysql-server mysql-clientA telepítés után az /etc/mysql/debian.cnf fájlban található egy beépített rendszer-felhasználó, amellyel jelszó nélkül is be lehet jelentkezni adminisztrációs célokra (csak helyi hozzáféréssel, karbantartáshoz használatos).
sudo nano /etc/mysql/debian.cnfApache2 + PHP telepítése és tesztelése
apt-get install apache2
apt-get install php5 libapache2-mod-php5
service apache2 restart
# Teszt PHP fájl létrehozása
nano /var/www/html/info.php
<?php
phpinfo();
?>A fájl böngészőből tesztelhető: http://[szerver_IP]/info.php
phpMyAdmin telepítése
apt-get install phpmyadmin
# Apache konfigurációba bekötés
nano /etc/apache2/apache2.conf
# hozzáadandó sor:
Include /etc/phpmyadmin/apache.conf
# PHP verzióváltás (pl. 5-ről 7.0-ra)
sudo a2dismod php5 ; sudo a2enmod php7.0 ; sudo service apache2 restartMegjegyzés: Alapértelmezett phpMyAdmin admin belépés telepítés után: root felhasználó, a MySQL telepítéskor megadott jelszóval. Ezt módosítsd telepítés után azonnal.
www-data csoport — fájlmegosztási jogosultság webszervernek
useradd -g www-data [felhasznalo1]
useradd -g www-data [felhasznalo4]Apache Virtual Host beállítása
Virtual Host-okkal egyetlen Apache szerveren több, különböző domain névhez tartozó weboldal is kiszolgálható, egymástól elkülönítve.
Részletes útmutató: https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-ubuntu-14-04-lts
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/[sajat-domain].conf
sudo nano /etc/apache2/sites-available/[sajat-domain].confKonfigurációs sablon
# Aliasok extra mappákhoz, pl.:
# Alias /vhost2 /elerhetoseg/masik/vhost2/mappajahoz
<VirtualHost *:80>
ServerAdmin admin@example.com
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com/public_html
<Directory "/var/www/example.com/">
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
sudo a2ensite [sajat-domain].conf
sudo service apache2 restartMegjegyzés: Ha a 000-default.conf is aktív marad, ütközhet az alapértelmezett localhost-tartalom a saját domainnel — vagy irányítsd át a 000-default-ot, vagy tiltsd le (a2dissite).
phpMyAdmin biztonsági beállítások
A phpMyAdmin alapértelmezett telepítése több ponton is biztonsági kockázatot jelenthet nyilvánosan elérhető szerveren. Az alábbi lépések csökkentik a támadási felületet.
Root bejelentkezés letiltása phpMyAdminon keresztül
sudo nano /etc/phpmyadmin/config.inc.php
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['AllowRoot'] = FALSE;Helyette hozz létre egy dedikált, korlátozott jogosultságú adminisztrátori felhasználót phpMyAdminon belül.
phpMyAdmin elérési útjának elrejtése / átnevezése
Ahelyett, hogy a phpMyAdmin a könnyen kitalálható /phpmyadmin útvonalon lenne elérhető, érdemes egyedi subdomain mögé rejteni:
sudo nano /etc/apache2/sites-available/[sajat-dbadmin-subdomain].conf
ServerName www.[egyedi-subdomain].[sajat-domain]
ServerAlias [egyedi-subdomain].[sajat-domain]
ServerAdmin webmaster@localhost
DocumentRoot /usr/share/phpmyadmin
<Directory "/usr/share/phpmyadmin">
Require all granted
</Directory>Az alapértelmezett /phpmyadmin elérés letiltása
sudo nano /etc/apache2/conf-available/phpmyadmin.conf
# Kommenteld ki az Alias sort, majd:
sudo service apache2 reload