Jak zainstalować stos LEMP na Debianie 8 Jessie (Nginx, MariaDB, PHP7)
LEMP oznacza Linux, Nginx (wymawiane Egnine X), MySQL/MariaDB i PHP. Umożliwia serwerowi hostowanie dynamicznych witryn internetowych i aplikacji internetowych. W tym samouczku pokażę, jak zainstalować stos LEMP na Debianie 8 Jessie. Wybieram instalację MariaDB jako serwera bazy danych zamiast MySQL i instaluję PHP7.
Krok 1 Zainstaluj Nginx
Nginx to lekki i szybki serwer WWW w porównaniu do Apache, który obecnie staje się coraz bardziej popularny. Może być również używany jako odwrotne proxy. Aby zainstalować Nginx na Debianie 8, wprowadź następujące polecenie w terminalu:
$ sudo apt-get install nginx -yPo zainstalowaniu Nginx powinien działać.
$ sudo service nginx status
[ ok ] nginx is running.Sprawdź wersję Nginx
$ nginx -v
nginx version: nginx/1.6.2Wpisz adres IP swojego serwera w przeglądarce internetowej. Jeśli zobaczysz następujący tekst, oznacza to, że Nginx został poprawnie zainstalowany.
Możesz sprawdzić swój publiczny adres IP za pomocą następującego polecenia
$ curl http://icanhazip.comMożesz także użyć curl na swoim serwerze, aby pobrać nagłówek HTTP
user@www:~$ curl -I localhost
HTTP/1.1 200 OK
Server: nginx/1.6.2
Date: Mon, 25 Jan 2016 16:33:28 GMT
Content-Type: text/html
Content-Length: 867
Last-Modified: Mon, 25 Jan 2016 16:20:36 GMT
Connection: keep-alive
ETag: "56a64b54-363"
Accept-Ranges: bytesJak widać, Nginx zwraca kod odpowiedzi 200 wskazujący, że Nginx działa poprawnie.
Zainstaluj MariaDB
MariaDB to zastępcza wersja MySQL. Zainstaluj go za pomocą następującego polecenia:
sudo apt-get install -y mariadb-server mariadb-clientPodczas procesu instalacji poprosi Cię o ustawienie hasła dla użytkownika root Mariadb. Wpisz dobre hasło i naciśnij Enter. Użytkownika root MariaDB nie należy mylić z użytkownikiem root systemu Debian.
Powtórz hasło i naciśnij Enter.
Sprawdź wersję MariaDB
$ mysql --version
mysql Ver 15.1 Distrib 10.0.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Teraz uruchom skrypt bezpieczeństwa
$ sudo mysql_secure_installationWprowadź hasło roota MariaDB. Gdy pojawi się pytanie, czy chcesz zmienić hasło roota, naciśnij klawisz n. Następnie możesz po prostu nacisnąć Enter, aby odpowiedzieć na wszystkie pozostałe pytania.
Instalacja MariaDB została ukończona.
Zainstaluj PHP7
Umieść poniższy tekst w pliku /etc/apt/sources.list, aby dodać repozytorium dotdeb.org.
deb http://packages.dotdeb.org jessie all
deb-src http://packages.dotdeb.org jessie allPobierz i zainstaluj klucz GnuPG
$ wget https://www.dotdeb.org/dotdeb.gpg
$ sudo apt-key add dotdeb.gpg
Zaktualizuj indeks pakietu lokalnego i zainstaluj PHP7.
$ sudo apt-get update
$ sudo apt-get install php7.0-fpm php7.0-mysql php7.0-common php7.0-gd php7.0-json php7.0-cli php7.0-curl php7.0-xml php7.0-zip php7.0-mbstringSkonfiguruj PHP7
Edytuj główny plik konfiguracyjny php-fpm:
sudo vi /etc/php/7.0/fpm/php.iniZnajdź następującą linię:
;cgi.fix_pathinfo=1usuń poprzedzający średnik i ustaw jego wartość na 0
cgi.fix_pathinfo=0Zapisz i zamknij plik. Uruchom ponownie php-fpm
sudo service php7.0-fpm restartSkonfiguruj wirtualny host Nginx
Utwórz nowy plik hosta wirtualnego w katalogu /etc/nginx/sites-available:
sudo vi /etc/nginx/sites-available/yourdomain.confDodaj do niego następujące linie.
server {
listen 80;
server_name yourdoman.com www.yourdomain.com;
root /var/www/html;
index index.php index.html index.htm index.nginx-debian.html;
location / {
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /var/www/html;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}Zamień yourdoman.com na rzeczywistą nazwę domeny. Zapisz i zamknij plik. Utwórz miękkie łącze:
sudo ln -s /etc/nginx/sites-available/yourdomain.conf /etc/nginx/sites-enabled/yourdomain.confNastępnie przetestuj konfigurację Nginx
user@www:$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successfulZaładuj ponownie konfigurację Nginx
$ sudo service nginx reloadDaj pełne uprawnienia /var/www/html użytkownikowi www-data.
sudo chown www-data:www-data /var/www/* -RPrzetestuj PHP
Utwórz plik info.php w katalogu głównym witryny:
$ sudo vi /var/www/html/info.phpUmieść następujący tekst w pliku info.php.
<?php
phpinfo();
?>Zapisz i zamknij plik. Teraz w pasku adresu przeglądarki wpisz następujący tekst:
yourdomain.com/info.phpZamień yourdomain.com na rzeczywistą nazwę domeny.
Jeśli widzisz coś takiego, oznacza to, że Twój PHP działa poprawnie.
Upewnij się, że ustawiłeś poprawny rekord A dla swojej nazwy domeny.
Plik info.php służy wyłącznie do testowania. Ze względów bezpieczeństwa możesz go teraz usunąć. Teraz pomyślnie zainstalowałeś stos LEMP (Nginx, Mariadb, PHP7-FPM) na Debianie 8 Jessie.
Dzięki!



