PHP-kunskap: programmeringsspråket förklarat
Vad PHP är, hur det skapar en webbsida och varför driftläge, konfiguration och version avgör säkerheten. Begripligt för beslutsfattare, med djup för administratörer och utvecklare.
Vad är PHP? Programspråket förklarat
PHP är ett skriptspråk som körs på servern och skapar HTML där. Många CMS och webbutiker bygger på det, därför berör en sårbarhet i PHP mycket många webbplatser.
Läs mer →02PHP:s historia: från 1994 till i dag
Från ett privat verktyg för en meritförteckning till grunden för många CMS och webbutiker: de viktigaste milstolparna i PHP:s historia med kontrollerade årtal.
Läs mer →03Så skapar PHP en webbsida: förfrågans väg
Vad som händer mellan klicket och den färdiga sidan: webbserver, SAPI, kompilator, OPcache och Zend VM i sju steg, och varför PHP2Shell sätter in just i det här förloppet.
Läs mer →04Zend Engine: PHP:s hjärta
Zend Engine översätter PHP-kod till opcodes och kör dem. Den som känner dess byggstenar förstår varför fel i kärnan, som PHP2Shell, bara åtgärdas med en PHP-uppdatering.
Läs mer →05OPcache förklarat: PHP:s bytekodcache
OPcache håller översatt PHP-kod i delat minne. Det sparar beräkningstid men kräver noggrannhet vid driftsättningar, omstarter och på servrar med flera kunder.
Läs mer →06SAPI förklarat: så pratar PHP med webbservern
SAPI är gränssnittet mellan PHP och webbservern. Det avgör hur förfrågningar kommer in, vilken php.ini som gäller och vad som måste startas om efter en uppdatering.
Läs mer →07PHP-FPM förklarat: processhanterare, pooler och workers
PHP-FPM kör PHP som egen tjänst med pooler och workers. Så fungerar processmodellen, vilka direktiv som räknas och varför workers måste startas om efter uppdateringar.
Läs mer →08mod_php förklarat: PHP i Apache-processen
Med mod_php sitter PHP i varje Apache-process. Det är enkelt men oflexibelt och efter PHP2Shell det riskablaste driftläget. Så fungerar det och så känner ni igen det.
Läs mer →09CGI och FastCGI: grunderna
CGI startar en process för varje förfrågan, FastCGI håller processer vid liv. Vad det betyder för PHP, php-cgi och PHP-FPM och vilka inställningar som rör säkerheten.
Läs mer →10PHP på kommandoraden (CLI)
PHP CLI kör skript utan webbserver, till exempel för cronjobb och underhåll. Den beter sig annorlunda än webbversionen och visar ofta inte det läge som er webbplats använder.
Läs mer →11php.ini förklarad: uppbyggnad, nivåer och företräde
Var PHP hittar sina inställningar, i vilken ordning de slår igenom och vem som får skriva över dem. Grunden för all härdning och för övergångsåtgärderna kring PHP2Shell.
Läs mer →12PHP-versioner och releasecykel
Varje år i november kommer en ny PHP-version som underhålls i fyra år. Vilka grenar som tar slut när och vad det betyder för er planering efter PHP2Shell.
Läs mer →13PHP 8.0 till 8.5: de viktigaste nyheterna
Från match och JIT i PHP 8.0 till pipe-operator och URI-tillägg i PHP 8.5: nyheterna i varje version, fallgroparna vid uppgradering och vad de ger för säkerheten.
Läs mer →14Förstå PHP-tillägg (extensions)
Tillägg ger PHP databasdrivrutiner, kryptering eller cachar. Så skiljer sig typerna åt, så laddar och kontrollerar ni dem, och vad de betyder för uppdateringar och härdning.
Läs mer →15Composer: pakethanteraren för PHP
Composer hämtar och förvaltar de bibliotek som moderna PHP-projekt bygger på. Den som förstår composer.json, composer.lock och autoloadern levererar reproducerbart och säkrare.
Läs mer →16PHP-ramverk i översikt
Ramverk ger PHP-applikationer struktur, routing och säkerhetsbyggstenar. Översikten visar de kända ramverken, urvalskriterier och gränserna för deras skydd.
Läs mer →17Vilka CMS och butikssystem som körs på PHP
Många kända CMS, webbutiker och företagsapplikationer körs på PHP. Så bedömer ni vilka av era webbplatser som kan beröras av PHP-sårbarheter som PHP2Shell.
Läs mer →18PHP och databaser: PDO och mysqli
PHP talar med databaser via PDO eller mysqli. Här ser ni skillnaderna, säkra frågor med prepared statements och vad som bör göras med databasåtkomster efter en serverincident.
Läs mer →19Sessioner och cookies i PHP
Sessioner gör det tillståndslösa HTTP till en inloggning som håller över flera sidor. Här står hur PHP löser det internt, vilka standardvärden som gäller och vad session.upload_progress har med PHP2Shell att göra.
Läs mer →20Superglobaler: $_GET, $_POST, $_FILES med flera
Superglobaler är de arrayer genom vilka PHP-kod når förfrågningsdata. Den som vet hur PHP fyller dem och vilka gränser som gäller skriver säkrare kod och förstår PHP2Shell bättre.
Läs mer →21Så hanterar PHP filuppladdningar
Mellan klicket på Ladda upp och er kod ligger en hel bearbetningskedja i PHP. Sidan förklarar multipart/form-data, temporära filer, $_FILES, gränsvärden och kopplingen till PHP2Shell.
Läs mer →22PHP:s typsystem
PHP är dynamiskt typat men har sedan PHP 7 fått ett allt striktare typsystem. Här ser ni typerna, de viktigaste versionerna och varför strikta jämförelser förhindrar säkerhetsfel.
Läs mer →23Fel och exceptions i PHP
PHP har både klassiska felmeddelanden och exceptions. Sidan förklarar Throwable-hierarkin, ren felhantering, säkra produktionsinställningar och PHP2Shell-åtgärden för fatal_error_backtraces.
Läs mer →24Objektorientering i PHP
Moderna PHP-applikationer är nästan alltid objektorienterade. Sidan förklarar byggstenarna, nyheterna i PHP 8.0 till 8.4 och varför magiska metoder spelar roll för säkerheten.
Läs mer →25Namnrymder och autoloading (PSR-4)
Namnrymder ordnar PHP-kod, autoloading laddar klasser exakt när de behövs. Här ser ni hur PSR-4 kopplar klassnamn till filer och varför autoloadern måste kontrolleras efter en incident.
Läs mer →26PSR-standarder från PHP-FIG
PSR är gemensamma standarder som många PHP-projekt har enats om. Sidan listar alla PSR med status och visar vilka som räknas i vardagen och var de berör säkerheten.
Läs mer →27Minneshantering i PHP: referensräkning och garbage collection
PHP hanterar minne med referensräkning och en garbage collector för cykler. Sidan förklarar mekaniken, de viktigaste mätfunktionerna och varför båda PHP2Shell-luckorna har med minnestillstånd att göra.
Läs mer →28memory_limit och Out-of-Memory: vad som händer inuti
Vad händer när ett PHP-skript når memory_limit? Mekaniken, den nya hårda minnesgränsen sedan oktoberpatcharna och kopplingen till CVE-2026-109618.
Läs mer →29Request-livscykeln: startup, körning, shutdown
Hur PHP startar processer, hanterar förfrågningar och städar däremellan. Med faserna MINIT till MSHUTDOWN och kopplingen till CVE-2026-109619.
Läs mer →30JIT och prestanda i PHP 8
JIT-kompilatorn översätter PHP till maskinkod sedan 8.0. För typiska webbplatser ger den lite; OPcache, aktuella versioner och ren konfiguration ger mer.
Läs mer →31Testa PHP-kod: PHPUnit och Pest
PHPUnit är standardverktyget för PHP-tester, Pest bygger på det. Den som har tester kan installera säkerhetsuppdateringar och versionsbyten snabbare och med mindre risk.
Läs mer →32Statisk analys: PHPStan och Psalm
PHPStan och Psalm hittar fel i PHP-koden utan att köra den. Psalm följer dessutom osäkra dataflöden. Luckor i själva PHP-tolken hittar ingen av dem.
Läs mer →33PHP:s inbyggda säkerhetsfunktioner
PHP har säkra byggstenar för lösenord, slumpvärden, maskering, kryptografi och sessioner. Den som använder dem konsekvent undviker de vanligaste applikationsfelen.
Läs mer →34Utveckla PHP lokalt: Docker, DDEV och andra
För lokal PHP-utveckling finns den inbyggda webbservern, officiella Docker-images och verktyg som DDEV. Viktigt är att samma PHP-version körs lokalt som live.
Läs mer →35PHP jämfört med Node.js, Python och Java
PHP, Node.js, Python och Java skiljer sig framför allt i körmodell och drift. Inget språk är i sig säkrare; underhåll och patchprocess är avgörande.
Läs mer →36Så hanterar PHP-projektet säkerhetsluckor
Säkerhetsluckor i PHP rapporteras konfidentiellt, klassas, åtgärdas i en release och publiceras som GitHub Security Advisory. PHP2Shell visar förloppet i skarpt läge.
Läs mer →37Kompilera PHP från källkoden
PHP går att bygga själv med configure och make. Det ger kontroll över tillägg och alternativ, men också hela ansvaret för varje säkerhetsuppdatering.
Läs mer →38Driva PHP i containrar
PHP i container kräver rätt image-variant, en produktionskonfiguration, rimliga minnesgränser och en process som bygger om images vid varje säkerhetsrelease.
Läs mer →39PHP:s framtid
PHP utvecklas enligt fasta regler: fyra års support per version, PHP 8.6 är planerad till den 19 november 2026, för PHP 9.0 finns antagna RFC men inget datum.
Läs mer →40PHP-grunder för administratörer
Vad administratörer behöver veta om PHP: vilka binärer som körs, hur konfigurationen verkar, hur FPM-pooler arbetar och vilka kommandon som hjälper vid uppdateringar som den för PHP2Shell.
Läs mer →Varje timme räknas. Skriv till oss nu.
Beskriv kort system, PHP-version och observation. Vi hör av oss, klarlägger läget och arbetar på distans tills incidenten är avslutad och dokumenterad.