• NGINX 1.30 – snabbare, säkrare och smartare webb

    Den nya versionen av NGINX markerar ett viktigt steg för hur framtidens webb ska fungera. Med fokus på hastighet, säkerhet och modern teknik introducerar version 1.30 flera förbättringar som påverkar allt från hur snabbt webbsidor laddas till hur väl användarnas integritet skyddas.

    Den nya stabila versionen av NGINX, version 1.30, har släppts och för med sig en rad förbättringar som gör webben både snabbare och säkrare. NGINX är idag en av världens mest använda webbservrar och driver över 30 procent av alla webbplatser, vilket gör varje uppdatering betydelsefull för en stor del av internet.

    Snabbare webb med Early Hints

    En av de mest spännande nyheterna är stöd för HTTP Early Hints, även kallat statuskod 103. Det innebär att servern kan börja skicka information till webbläsaren innan hela sidan är färdigbehandlad.

    I praktiken betyder det att webbläsaren kan börja ladda viktiga resurser, som stilmallar och skript, tidigare än förut. Resultatet blir kortare laddningstider och en snabbare upplevelse för användaren.

    Starkare integritet med Encrypted ClientHello

    En annan viktig nyhet är stöd för Encrypted ClientHello (ECH). Trots att HTTPS redan krypterar mycket av trafiken har vissa delar tidigare varit synliga, till exempel vilken webbplats användaren försöker nå.

    Med ECH krypteras även denna information, vilket gör det svårare för utomstående att övervaka surfvanor. Det är ett viktigt steg mot en mer privat och säker internetanvändning.

    Smartare trafikhantering

    NGINX 1.30 introducerar också förbättrad hantering av trafik mellan servrar. En ny funktion är så kallade sticky sessions, som ser till att en användare konsekvent kopplas till samma server i ett kluster.

    Detta är särskilt viktigt för tjänster där sessioner spelar roll, som inloggningar eller e-handel. Dessutom har stödet för HTTP/2 utökats till kommunikationen mellan servrar, vilket gör interna system snabbare och mer effektiva.

    Förbättringar i HTTP/2 och HTTP/3

    Den nya versionen innehåller flera förbättringar för både HTTP/2 och HTTP/3. Dessa inkluderar bättre stabilitet, färre buggar och effektivare hantering av dataöverföring.

    Även tekniska problem som tidigare kunnat orsaka krascher eller ineffektiv kommunikation har åtgärdats, vilket bidrar till en mer robust webbupplevelse.

    Starkare kryptering och TLS-stöd

    NGINX 1.30 förbättrar också stödet för modern kryptering. Bland nyheterna finns certifikatkomprimering, vilket kan snabba upp säkra anslutningar, samt bättre kompatibilitet med framtida versioner av krypteringsbibliotek som OpenSSL.

    Dessutom introduceras nya variabler och förbättrad hantering av hur servrar identifieras vid säkra anslutningar.

    Små förbättringar med stor effekt

    Utöver de större funktionerna innehåller uppdateringen många mindre förbättringar. Till exempel är keep-alive nu aktiverat som standard, vilket förbättrar prestandan genom att återanvända anslutningar.

    Flera buggar har också rättats, bland annat inom gRPC, cachehantering och proxyfunktioner, vilket gör systemet mer stabilt i praktisk användning.

    Varför det spelar roll

    Eftersom NGINX används av en så stor del av internet får dessa förbättringar bred påverkan. För användare innebär det snabbare laddningstider, bättre säkerhet och en mer stabil upplevelse.

    För utvecklare och företag innebär det effektivare verktyg, modernare teknikstöd och färre tekniska problem att hantera.

    Sammanfattning

    NGINX 1.30 markerar ett tydligt steg framåt för webbteknik. Med förbättrad prestanda, starkare integritetsskydd och modernare protokollstöd bidrar uppdateringen till ett snabbare, säkrare och mer tillförlitligt internet.

    Teknisk fakta: NGINX 1.30

    Vad är NGINX?
    NGINX är en webbserver och reverse proxy som används för att leverera webbsidor, hantera trafik och agera mellanhand mellan användare och backend-servrar. Den är känd för sin höga prestanda, låga resursanvändning och förmåga att hantera många samtidiga anslutningar. NGINX används ofta även som lastbalanserare och cache för att snabba upp webbapplikationer.


    Version: 1.30

    Gren: Ny stabil branch

    Huvudfunktioner:
    HTTP Early Hints (snabbare laddning), Encrypted ClientHello (förbättrad integritet), sticky sessions (stabil sessionshantering), HTTP/2 till backend-servrar

    Transport: Multipath TCP

    Standard upstream: HTTP/1.1 med keep-alive aktiverat

    TLS/SSL:
    Certifikatkomprimering, stöd för OSSL_STORE, förbättrad SNI-hantering, nya variabler för signaturalgoritmer och kompatibilitet med framtida OpenSSL-versioner

    HTTP/2 & HTTP/3:
    Förbättrad stabilitet, buggfixar, bättre hantering av headers och anslutningar, samt förbättrad QUIC-integration

    Övrigt:
    Upstream keepalive aktiverat som standard, förbättrad cachehantering, fixar för gRPC och proxyfunktioner

  • En ringklocka utan sladdar – när webben ringer på dörren

    En QR-kod på dörren, en webbsida som “ringer”, och en konsol inomhus som plingar till via en egen ntfy-server – kan det verkligen fungera som ringklocka? I praktiken visade det sig vara oväntat stabilt och snabbt, även om det knappast ersätter en klassisk installation permanent. Här publicerar vi den testade koden och visar vilka få inställningar du behöver ändra för att komma igång.

    Tänk dig en ringklocka som inte sitter i väggen, inte kräver någon särskild hårdvara och inte ens behöver vara i samma byggnad som du själv. I stället består den av en QR-kod, en webbsida och en notifieringstjänst. Det låter som ett experiment – och det är det också – men ett förvånansvärt fungerande sådant.

    I en tidigare artikel beskrev vi hur man kan bygga en mjukvarubaserad ringklocka med hjälp av QR-kod, egen domän och en självhostad ntfy-server. Nu har lösningen testats i praktiken, och dessutom publiceras den kod som faktiskt användes. Den skiljer sig något från den som visades i det första inlägget.

    Resultatet? Inte något man installerar som permanent ersättning för en vanlig ringklocka, men absolut ett intressant och lärorikt bygge.

    Två delar som tillsammans bildar ett “pling”

    Systemet är uppdelat i två tydliga delar som samverkar via webben.

    Den första delen är webbsidan som QR-koden pekar på. QR-koden sitter exempelvis på dörren eller porten. När någon skannar den öppnas en enkel webbsida där besökaren kan ”ringa på”. Ett klick räcker för att ett meddelande ska skickas vidare.

    Den andra delen är konsolen på insidan. Det kan vara en dator, surfplatta eller mobil som har en webbsida öppen i webbläsaren. Den sidan lyssnar på notifieringar från ntfy-servern. När någon ringer på hörs ett ljud och ett meddelande visas direkt på skärmen.

    All kommunikation sker i realtid, helt via webbläsaren.

    Hur fungerade det i praktiken?

    Överraskande bra.

    Notiserna dök upp snabbt, ljudsignalen fungerade stabilt och hela lösningen kändes oväntat robust så länge nätverket var tillförlitligt. Samtidigt märks det tydligt att detta inte är tänkt som en långsiktig hushållsprodukt. Det är mer ett tekniskt experiment än en färdig konsumentlösning.

    Men som koncept och demonstration är det mycket lyckat.

    Den testade koden och nödvändiga ändringar

    När du laddar ner och packar upp arkivet med koden hittar du två mappar, en för webbsidan bakom QR-koden och en för konsolen.

    I filen index.html för webbdelen behöver du ändra adressen till din egen ntfy-server:

    const NTFY_URL = ”https://ntfy.exempel.se/ringklocka-Ringer”;

    Sätt adressen till den domän där din ntfy-server faktiskt finns.

    I konsolens index.html gör du motsvarande ändring:

    const NTFY_BASE = ”https://ntfy.exempel.se”;

    Även här ska adressen peka på din egen ntfy-domän.

    Vad krävs för att lösningen ska fungera?

    För att systemet ska fungera pålitligt behöver du några grundläggande förutsättningar. Du bör ha en egen domän, både för stabilitet och för att kunna använda HTTPS. Du behöver också tillgång till en ntfy-server, helst självhostad. Slutligen krävs en enhet som är igång och har konsolsidan öppen i webbläsaren.

    I övrigt behövs inga appar, inga användarkonton och ingen specialutrustning.

    Installera ntfy

    För att installera en ntfy-server på Ubuntu är det en fördel att ta det steg för steg. Börja med att se till att systemet är uppdaterat och att du har grundläggande verktyg som curl och gpg installerade. Därefter lägger du till ntfy-projektets officiella paketkälla. Det görs genom att hämta GPG-nyckeln och registrera arkivet i systemets APT-konfiguration. När paketkällan är på plats uppdaterar du paketlistan och installerar ntfy med systemets vanliga pakethanterare.

    När programmet är installerat skapar du en konfigurationsfil, vanligtvis /etc/ntfy/server.yml. Där anger du grundläggande inställningar, till exempel vilken extern adress servern ska använda, som https://ntfy.dindomän.se, samt vilken lokal port tjänsten ska lyssna på. Konfigurationsfilen behöver inte vara avancerad till att börja med, utan kan hållas mycket enkel.

    Nästa steg är att köra ntfy som en systemtjänst. Genom att aktivera tjänsten med systemd ser du till att den startar automatiskt vid omstart av servern. När tjänsten väl är igång kan du kontrollera att den fungerar genom att skicka ett testmeddelande till ett valfritt ämne.

    För praktisk och säker användning placeras ntfy normalt bakom en webbserver som Apache. Webbservern fungerar då som en omvänd proxy och vidarebefordrar HTTPS-trafik till ntfy-tjänsten som kör lokalt. Slutligen säkrar du uppkopplingen med ett TLS-certifikat, till exempel via Let’s Encrypt och Certbot.

    När dessa delar är på plats har du en stabil och självhostad ntfy-server som kan användas för allt från notifieringar till den mjukvarubaserade ringklockan till andra typer av realtidsmeddelanden.

    Varför är detta intressant?

    För att det visar hur långt man kan komma med enkla webbtekniker och öppna standarder. Med bara HTML, JavaScript och en notifieringstjänst går det att koppla samman den fysiska världen med webben på ett mycket direkt sätt.

    Samma idé kan användas för andra ändamål, till exempel enkla larmsystem, interna notifieringar, hjälpknappar eller tillfälliga installationer på mässor och evenemang.

    Det är kanske inte framtidens ringklocka, men det är ett tydligt exempel på hur kreativ mjukvara kan ersätta hårdvara – åtminstone ibland.

    Texten ovan bör ses som en övergripande beskrivning. Ett tips är att ta hjälp av en lämplig AI för att få allt att fungera.

    Länk för att ladda hem koden

    https://www.linux.se/kod/ringkloocka.tar

    Fakta: Mjukvaruringklocka med QR-kod och ntfy
    En experimentell ringklocka som använder en QR-kod på dörren och en webbsida som skickar en notifiering till en konsol via en egen ntfy-server.
    Består av:
    • Webbsida som QR-koden pekar på (”ring på”-knapp)
    • Konsolvy i webbläsaren som spelar ljud och visar meddelanden
    • ntfy-server som förmedlar notifieringar i realtid
    Du behöver:
    • Egen domän och HTTPS
    • En ntfy-server (helst självhostad på Ubuntu)
    • En enhet som är igång och har konsolsidan öppen
    Filer att ändra i koden:
    index.html: NTFY_URL
    consol/index.html: NTFY_BASE
    Tips: Se texten i artikeln som en övergripande beskrivning. Ta gärna hjälp av en lämplig AI för att få detaljerna rätt i din egen miljö.

Etikett: webbteknik

  • NGINX 1.30 – snabbare, säkrare och smartare webb

    Den nya versionen av NGINX markerar ett viktigt steg för hur framtidens webb ska fungera. Med fokus på hastighet, säkerhet och modern teknik introducerar version 1.30 flera förbättringar som påverkar allt från hur snabbt webbsidor laddas till hur väl användarnas integritet skyddas. Den nya stabila versionen av NGINX, version 1.30, har släppts och för med…

  • En ringklocka utan sladdar – när webben ringer på dörren

    En QR-kod på dörren, en webbsida som “ringer”, och en konsol inomhus som plingar till via en egen ntfy-server – kan det verkligen fungera som ringklocka? I praktiken visade det sig vara oväntat stabilt och snabbt, även om det knappast ersätter en klassisk installation permanent. Här publicerar vi den testade koden och visar vilka få…