Hur man installerar en webbserver på Raspberry Pi (Apache + PHP + MySQL)

aug 18, 2021
admin

ⓘ Denna artikel kan ha översatts helt eller delvis med automatiska verktyg. Vi ber om ursäkt för eventuella fel som detta kan orsaka.

Efter att ha skapat ditt SD-kort, och efter att ha startat din Raspberry Pi för första gången, finns det stora chanser att du vill använda som webbserver.

Varför en Raspberry Pi som webbserver ?

Men varför använda en Raspberry Pi som webbserver istället för att använda tjänsteleverantörer som är specialiserade på webbhotell?

För det första, ur ekonomisk synvinkel, bör du veta att webbhotellstjänster inte är gratis och att du måste betala varje månad/år. Till skillnad från Raspberry som bara behöver till en anslutning.
Det är dessutom genom att välja Raspberry, du har möjlighet att ändra dina tjänster som du vill (exempel: storleken på disken, hosting av databas, etc.), vilket i allmänhet inte är fallet med specialiserade värdar , Som ofta säljer delat webbhotell med låg konfigurationskapacitet.
För att stödja fler användare bör du dock använda en Raspberry Pi 3 (Pi 3 kan hittas här), Raspberry Pi med 1 GB RAM, snarare än Raspberry typ B + (512 MB RAM)

Frågan som nu uppstår är, hur man gör en webbserver på Raspeberry Pi ?Installation du serveur Apache avec Raspbian

Vad är Apache?

Först ska vi installera Apache, som är webbservern som sådan.
När vi talar om en webbserver tänker vi ofta på maskinen, men denna term avser också den programvara som gör det möjligt för maskinen att analysera användarens förfrågningar (i http-form), och att returnera filen som motsvarar förfrågan (Eller ett fel om filen inte hittas, eller om förfrågan är felaktigt formulerad).
Som en del av Apache är det programvara som vi talar om.

För närvarande är Apache den mest använda webbservern, med cirka 60 % marknadsandel. Apache har en egen licens som används av många andra projekt. Dessutom har den massiva användningen av Apache (som har blivit standard för webbservrar), tillsammans med dess stora popularitet, lett till ett enormt överflöd av dokumentation, kurser och andra böcker som handlar om dess användning och hans säkerhet, som den här boken.

Oavsett om det är för Raspberry Pi och Raspbian, eller för en mer allmängiltig maskin, är Apache därför ett säkert val, och de kunskaper du kommer att kunna skaffa dig i ämnet kommer alltid att vara användbara.

Apache-installation

För att installera servern, se till att vi har en uppdaterad maskin. För att göra detta måste vi ha administratörsrättigheter, antingen på grund av kommandot sudo.

sudo apt updatesudo apt upgradesudo apt update

När Raspberry Pi är uppdaterad kommer vi att installera Apache-servern.

sudo apt install apache2

Förresten kommer vi att dra nytta av det för att ge rättigheter till apache-filen som du enkelt kan hantera dina webbplatser. För att göra detta, kör följande kommandon:

sudo chown -R pi:www-data /var/www/html/sudo chmod -R 770 /var/www/html/

Kontrollera om Apache fungerar

När installationen är klar kan vi testa att Apache fungerar korrekt genom att gå till Hallon-adressen.
För att göra detta är det nödvändigt att försöka få tillgång till Hallon från port 80 (denna port öppnas inte från utsidan, det kommer att behöva göra sedan Hallon själv). Oroa dig inte, det är väldigt enkelt. Öppna helt enkelt webbläsaren för Raspberry och gå till ”http://127.0.0.1”. Du bör då få en sida med ett meddelande som ”Det fungerar! ”Och massor av annan text.
Om du inte redan har ett GUI på din Raspbian, eller om du använder SSH för att ansluta till din Raspberry, kan du använda följande kommando:

wget -O check_apache.html http://127.0.0.1

Detta kommando kommer att spara HTML-koden för sidan i filen ”check_apache.html” i den aktuella katalogen.
Så du behöver bara läsa filen med kommandot

cat ./check_apache.html

Om du ser markerat på en plats i koden ”Det fungerar! ” är att Apache fungerar.

Apache använder katalogen ”/var/www/html” som rot för din webbplats. Det betyder att när du ringer till din hallon på port 80 (http) letar Apache efter filen i ”/var/www/html”.
Om du till exempel ringer till adressen ”http://127.0.0.1/example” letar Apache efter filen ”example” i katalogen ”/var/www/html”.
För att lägga till nya filer, webbplatser osv, måste du lägga till dem i den här katalogen.

Du kan nu använda din hallon för att göra en webbplats i HTML, CSS och JavaScript internt.
Det kan dock hända att du snabbt vill tillåta interaktioner mellan webbplatsen och användaren. Till exempel för att låta användaren registrera sig osv. För detta behöver du PHP.

PHP-installation på din Raspberry Pi

Vad är PHP?

För det första bör du veta att PHP är ett tolkat språk. Och precis som när det gäller servrar kan akronymen PHP ha flera betydelser. Faktum är att när vi talar om PHP kan vi tala om antingen språket eller tolkaren.
När vi här talar om att installera PHP betyder det att vi ska installera tolkaren, för att kunna använda språket.

PHP (språket den här gången) används främst för att göra en webbplats dynamisk, det vill säga att användaren skickar information till servern som returnerar de ändrade resultaten enligt denna information. Omvänt anpassar sig en statisk webbplats inte till den information som användaren tillhandahåller. Den sparas som en fil en gång för alla och kommer alltid att leverera samma innehåll.

PHP är gratis och underhålls av PHP Foundation samt Zend Enterprise och flera andra företag (det bör noteras att Zend också är författare till det berömda Zend PHP-ramverket, som används flitigt och är erkänt inom ” affärsvärlden).

Det är ett av de mest använda programmeringsspråken, och det är till och med det mest använda för webbprogrammering, med cirka 79 % marknadsandel.

Också alla kunskaper du kan skaffa dig, om språket eller om installation och konfiguration av tolken, kommer alltid att vara användbara. Så vi kan bara råda dig att lära dig PHP, som verkligen är ett underbart språk som alltför ofta underskattas.

Hur man installerar PHP

Vi kommer återigen att använda administratören för att installera PHP med hjälp av kommandoraden.

sudo apt install php php-mbstring

Kontrollera om PHP fungerar

För att veta om PHP fungerar som det ska är det inte särskilt komplicerat, och metoden är ganska lik den som används för Apache.

Du raderar först filen ”index.html” i katalogen ”/var/www/html”.

sudo rm /var/www/html/index.html

Skapa sedan en fil ”index.php” i den här katalogen, med den här kommandoraden

echo "<?php phpinfo ();?>" > /var/www/html/index.php

Därifrån är operationen densamma som för Apache-kontrollen. Du försöker komma åt din sida, och du bör få ett resultat som liknar den här bilden (om du inte har något gränssnitt använder du samma metod som tidigare och letar efter orden ”PHP-version”).

Fångst av en phpinfo från en server under Raspbian.

Tabell som genereras av phpinfo-kommandot på en Raspberry.

En MySQL-databas för din server

En DBMS vad är det? Varför MySQL?

När vi nu har installerat PHP vill du förmodligen lagra information för användning på dina webbplatser. För detta ändamål används oftast databaser.
Vi kommer därför att sätta upp ett DBMS (Database Management System), nämligen MySQL.

MySQL är ett gratis, kraftfullt och mycket använt DBMS (ca 56 % marknadsandel för gratis DBMS). Även här är MySQL så viktigt för utveckling, oavsett språk, att du absolut måste lära dig och behärska det, till exempel med den här boken.

Hur man installerar MySQL

För att göra detta kommer vi att installera mariadb-server och php-mysql (som kommer att fungera som en länk mellan php och mysql)

sudo apt install mariadb-server php-mysql

Verifiera att MySQL fungerar korrekt

För att kontrollera MySQL:s funktion kommer vi denna gång att använda oss enbart av kommandoraden. För att göra detta kommer vi helt enkelt att ansluta via kommandot:

sudo mysql --user=root

Vi kommer inte att ta bort standardrootanvändaren mysql och skapa en ny mysql-rootanvändare, eftersom standardrootanvändaren endast kan användas med Linux root-kontot, och därför inte är tillgänglig för webbservern och php-skript.

För att göra detta, när du väl är ansluten till MySQL, kör helt enkelt dessa kommandon (ersätt password med det lösenord du vill ha) :

DROP USER 'root'@'localhost';CREATE USER 'root'@'localhost' IDENTIFIED BY 'password';GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;

Så du har nu en webbserver, ansluten till PHP och MySQL. Det är allt som behövs.

(Vid dina nästa anslutningar kommer du att kunna ansluta till MySQL utan att använda sudo, med kommandot mysql --user=root --password=yourmysqlpassword).

Add PHPMyAdmin

Installationen av PHPMyAdmin är absolut inte nödvändig. I den här installationen kommer vi inte att ta hand om några speciella säkerhetsinställningar !

Installationen av PHPMyAdmin är ganska snabb och enkel, vi måste helt enkelt använda pakethanteraren med det här kommandot :

sudo apt install phpmyadmin

PHPMyAdmin installationsprogrammet kommer att ställa några frågor. Om dbconfig-common delen, välj att inte använda den (eftersom vi redan har konfigurerat vår databas). När det gäller den server som PHPMyAdmin ska konfigureras för väljer du Apache. Och root-lösenordet är det som du ställde in för MySQL.

Du bör också aktivera mysqli-tillägget med hjälp av kommandot ovan :

sudo phpenmod mysqlisudo /etc/init.d/apache2 restart

Kontrollera att PHPMyAdmin fungerar som det ska

För att kontrollera att PHPMyAdmin fungerar försöker du helt enkelt få tillgång till det, genom att använda adressen till din Hallon följt av /phpmyadmin. Lokalt blir det till exempel http://127.0.0.1/phpmyadmin

Om du fortfarande får ett fel kan det bero på att PHPMyAdmin har flyttats till en annan katalog. Prova i så fall kommandot

sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

Nu kan vi komma åt PHPMyAdmin från Raspberry Pis webbläsare, med url:n : http://127.0.0.1/phpmyadmin

Makning av en server tillgänglig från webben

Din webbserver är klar. Du kan dock förmodligen inte komma åt den från internet. Det skulle nämligen vara nödvändigt att ditt modem omdirigerar förfrågningarna till din hallon, de bra portarna.
För att sätta dessa omdirigeringar på plats, och även få en URL, bör du titta på DynDNS och port forwarding !

4.8 / 5 ( 18 röster )

Lämna ett svar

Din e-postadress kommer inte publiceras.