Construiți un server web Raspberry Pi LAMP Stack cu PHPMyAdmin și Filezilla

AVERTISMENT Nu sugerăm nimănui să încerce să ruleze un site web public pe un Raspberry Pi sau, într-adevăr, pe orice server de acasă/la birou. Nu am făcut nicio încercare de a face serverul web sigur, deoarece nu a fost o problemă pentru proiectul nostru. Ar fi necesare cercetări suplimentare pentru a întări stiva LAMP înainte ca serverul să poată fi expus pe internet.

Instalați Linux

  • Instalați sistemul de operare Raspbian (bazat pe Debian Linux)
  • Utilizați interfața de utilizare pentru a seta o parolă de conectare și pentru a dezactiva Autentificarea automată
  • Utilizați interfața de utilizare pentru a seta o adresă IP fixă și un nume de gazdă personalizat
  • Reporniți și conectați-vă cu noua parolă
  • Actualizați cu sudo apt-get update și sudo apt-get dist-.upgrade (un moment bun pentru a merge să vă faceți o ceașcă de ceai, deoarece durează ceva timp)
  • O ultimă repornire, deoarece una sau mai multe dintre actualizări este obligatoriu să o necesite

Instalați Apache

sudo apt-get install apache2 -y

Testați local de către deschizând browserul web al Pi și vizitând http://localhost/ și, opțional, testați și prin intermediul unui computer conectat în rețea, vizitând http://your-pi’s-ip-address

Arhivele vor fi stocate în /var/www/html/ – pentru a face viața mai ușoară, am dat tuturor utilizatorilor acces în scris la acest folder:

sudo chmod -R 777 /var/www/html

Vom ști dacă acest lucru a funcționat atunci când vom testa PHP în etapa următoare.

Instalați PHP

sudo apt-get install php libapache2-mod-php -y

Puteți testa PHP înlocuind fișierul implicit index.html cu un fișier index.php (sugerăm să conțină phpinfo();) în /var/www/html – dacă constatați că nu puteți șterge, crea sau modifica fișiere în acest director, atunci verificați de două ori dacă ați setat permisiunile în pasul de mai sus

TIP Până acum procesul a fost infailibil, dar am constatat că configurarea corectă a MySQL și a utilizatorilor săi a fost un proces oarecum de încercare și eroare. A fost nevoie de mai multe încercări pentru a ajunge la sistemul de mai jos – care s-ar putea să nu fie potrivit pentru dumneavoastră sau să fie încă corect în momentul în care citiți aceste rânduri. Acesta ar putea fi un moment bun pentru a face o imagine a cardului SD al Pi-ului dumneavoastră, astfel încât să puteți experimenta și să reveniți rapid la acest pas dacă este necesar.

Instalează serverul MySQL

sudo apt-get install mysql-server php-mysql -y

Instalarea nu mai cere o parolă pentru root, în schimb trebuie să rulați

sudo mysql_secure_installation

și să răspundeți la câteva întrebări. Amintiți-vă că aici avem de-a face cu utilizatorul rădăcină MySQL NU cu utilizatorul rădăcină Linux, așa că puteți folosi parole diferite dacă doriți – doar păstrați o evidență bună.

Reporniți Apache:

sudo service apache2 restart

Acum încercați să vă conectați la MySQL ca noul utilizator rădăcină introducând parola pe care tocmai ați configurat-o atunci când vi se solicită:

mysql -u root -p

Dacă accesul vă este refuzat, atunci va trebui să efectuați următorii pași suplimentari.

În primul rând folosiți sudo pentru a vă loga în MySQL:

sudo mysql -u root

Accesați tabelul MySQL:

 USE mysql;

Și acum partea magică:

UPDATE user SET plugin='mysql_native_password' WHERE User='root';

atunci

FLUSH PRIVILEGES;

acum

quit

și

service mysql restart

apoi încercați să vă logați din nou ca mai sus – adică fără a folosi sudo. Dacă nu reușiți să vă conectați începeți să căutați pe Google – nu treceți mai departe până nu ați rezolvat acest pas.

Instalați PHPMyAdmin (opțional)

Poate că nu aveți nevoie de acest lucru, dar pentru proiectul meu am decis să instalez GUI-ul de administrare MySQL cu care sunt cel mai familiarizat – PHPMyAdmin.

sudo apt-get install phpmyadmin

(confirmați că doriți să continuați, selectați serverul apache2, faceți clic pe yes pentru configurarea pachetului, PROVIZIONAȚI O PAROLĂ și înregistrați-o. Dacă lăsați parola goală, vă creează una aleatorie, dar, din câte văd, nu vă spune niciodată care este!”

Modificați fișierul /etc/apache2/apache2.conf file prin adăugarea liniei

include /etc/phpmyadmin/apache.conf

la sfârșitul fișierului.

Reporniți Apache:

sudo /etc/init.d/apache2 restart

Testați accesând http://localhost/phpmyadmin și autentificându-vă cu numele de utilizator phpmyadmin și parola pe care ați furnizat-o în timpul configurării.

Instalați clientul FTP Filezilla (opțional)

Există o mulțime de modalități de a gestiona FTP, dar eu am ales să rămân la ceea ce știu și să instalez Filezilla:

sudo apt-get install filezilla

Cel mai important pas!

După ce sunteți mulțumit că totul funcționează, asigurați-vă că faceți o imagine a cardului SD, astfel încât să vă puteți recupera rapid în caz de probleme. Cardurile SD nu sunt foarte robuste sau de lungă durată, așa că așteptați-vă să se defecteze și planificați în consecință. Vă veți mulțumi pentru asta!

Concluzie

Cu excepția instalării MySQL, procesul este incredibil de rapid și ușor. Serverul rezultat este fiabil și mai mult decât capabil să ruleze instrumentul de administrare bazat pe WordPress pe care am vrut să îl aducem în casă. Serverul web bazat pe Pi se află acum lângă unitatea noastră NAS bazată pe Pi și ne întrebăm ce putem construi în continuare!

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.