• 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

  • Installera Wiki.js på debian eller Ubuntu

    Introduktion

    Wiki.js är en modern, snabb och modulär wiki-mjukvara med öppen källkod. Den bygger på Node.js, lagrar innehåll i Git och Markdown och stöder flera databasmotorer som PostgreSQL, MySQL och SQLite. Wiki.js kan distribueras lokalt, i molnet eller i containermiljöer (Docker/Kubernetes), och stöder autentisering via LDAP, OAuth2, SAML med flera.

    I denna guide installerar vi Wiki.js på Debian 12 eller Ubuntu 22.04, med val mellan PostgreSQL eller MySQL som databas, och Nginx eller Apache som webbserver. Vi visar också hur du aktiverar SSL med Let’s Encrypt.

    Förutsättningar

    • En Debian- eller Ubuntu-server med root eller sudo
    • Ett domännamn som pekar till servern (exempel: wiki.example.com)
    • Portarna 80 och 443 öppna i brandväggen

    Steg 1: Installera Node.js

    Wiki.js kräver Node.js version 16 eller senare. Här använder vi version 18:

    curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
    sudo apt install -y nodejs
    

    Bekräfta installationen:

    node -v
    

    Steg 2: Installera databas

    Alternativ A: PostgreSQL (rekommenderat)

    sudo apt install -y postgresql postgresql-contrib
    sudo -u postgres psql
    

    Inuti psql:

    CREATE DATABASE wikijs;
    CREATE USER wikijs WITH PASSWORD 'sakerlösenord';
    ALTER ROLE wikijs SET client_encoding TO 'utf8';
    ALTER ROLE wikijs SET default_transaction_isolation TO 'read committed';
    ALTER ROLE wikijs SET timezone TO 'UTC';
    GRANT ALL PRIVILEGES ON DATABASE wikijs TO wikijs;
    \q
    

    Alternativ B: MySQL / MariaDB

    sudo apt install -y mariadb-server
    sudo mysql -u root -p
    

    Inuti MySQL:

    CREATE DATABASE wikijs CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
    CREATE USER 'wikijs'@'localhost' IDENTIFIED BY 'sakerlösenord';
    GRANT ALL PRIVILEGES ON wikijs.* TO 'wikijs'@'localhost';
    FLUSH PRIVILEGES;
    EXIT;
    

    Steg 3: Installera Wiki.js

    sudo mkdir -p /opt/wikijs && cd /opt/wikijs
    sudo curl -s https://wiki.js.org/install.sh | sudo bash
    

    Fyll i databasuppgifter beroende på om du använder PostgreSQL eller MySQL.

    Steg 4: Testa att Wiki.js kör lokalt

    ss -tulpn | grep 3000
    

    Om Wiki.js körs, visas att Node.js lyssnar på 127.0.0.1:3000.

    Steg 5: Reverse proxy med Nginx eller Apache

    Alternativ A: Nginx

    sudo apt install -y nginx
    sudo nano /etc/nginx/sites-available/wikijs
    

    Innehåll:

    server {
        listen 80;
        server_name wiki.example.com;
    
        location / {
            proxy_pass http://127.0.0.1:3000;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection 'upgrade';
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
        }
    }
    
    sudo ln -s /etc/nginx/sites-available/wikijs /etc/nginx/sites-enabled
    sudo nginx -t && sudo systemctl reload nginx
    

    Alternativ B: Apache

    sudo apt install -y apache2
    sudo a2enmod proxy proxy_http proxy_wstunnel rewrite headers
    

    Skapa konfiguration:

    sudo nano /etc/apache2/sites-available/wikijs.conf
    

    Innehåll:

    <VirtualHost *:80>
        ServerName wiki.example.com
    
        ProxyPreserveHost On
        ProxyRequests Off
        ProxyPass / http://127.0.0.1:3000/
        ProxyPassReverse / http://127.0.0.1:3000/
    
        ErrorLog ${APACHE_LOG_DIR}/wikijs.error.log
        CustomLog ${APACHE_LOG_DIR}/wikijs.access.log combined
    </VirtualHost>
    
    sudo a2ensite wikijs.conf
    sudo systemctl reload apache2
    

    Steg 6: Aktivera HTTPS med Let’s Encrypt

    Installera Certbot:

    sudo apt install -y certbot python3-certbot-nginx python3-certbot-apache
    

    För Nginx:

    sudo certbot --nginx -d wiki.example.com
    

    För Apache:

    sudo certbot --apache -d wiki.example.com
    

    Testa automatisk förnyelse:

    sudo certbot renew --dry-run
    

    Steg 7: Slutför installationen i webbläsaren

    Öppna din webbläsare och gå till:

    https://wiki.example.com
    

    Skapa administratörsanvändare och slutför konfigurationen.

    Slutsats

    Du har nu installerat Wiki.js på Debian eller Ubuntu med PostgreSQL eller MySQL, samt Apache eller Nginx som reverse proxy. Med Let’s Encrypt är installationen säkrad via HTTPS. Wiki.js är redo att användas för både intern dokumentation och publika kunskapsbaser.

    Glöm inte att hålla systemet uppdaterat och konfigurera regelbundna säkerhetskopior.

    Mer information och dokumentation: https://docs.requarks.io/

    Fakta om Wiki.js

    Wiki.js är en modern wiki-motor med öppen källkod, utvecklad av Requarks. Den första versionen lanserades 2016 och har sedan dess blivit ett populärt val för både organisationer och enskilda användare som behöver en effektiv dokumentationsplattform.

    Funktioner

    • Byggd med Node.js för hög prestanda och låg resursförbrukning.
    • Stöd för databaser som PostgreSQL, MySQL och SQLite.
    • Versionshantering via Git – dokumenthistorik kan spåras och återskapas.
    • Modulbaserad arkitektur – välj själv vilka funktioner som ska aktiveras.
    • Stöd för användarautentisering via LDAP, OAuth2, SAML med flera.
    • Webbgränssnittet är responsivt och fungerar både på dator och mobil.
    • Kan installeras på egen server, i molnmiljö eller med Docker/Kubernetes.

    Vad är Markdown?

    Markdown är ett enkelt markeringsspråk som gör det möjligt att skriva strukturerad text med minimal syntax. Det används i Wiki.js för att skapa och redigera innehåll utan att behöva skriva HTML. Nedan är ett exempel:

    # Rubriknivå 1
    ## Rubriknivå 2
    
    **Fet text**, _kursiv text_
    
    - Punkt 1
    - Punkt 2
    
    [Länktext](https://exempel.se)
      

    Markdown är läsbart även i råform, vilket gör det smidigt att hantera dokument både via webben och i Git-repositorier.

    Mer information finns på js.wiki och daringfireball.net.

Etikett: Nginx

  • 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…

  • Installera Wiki.js på debian eller Ubuntu

    Introduktion Wiki.js är en modern, snabb och modulär wiki-mjukvara med öppen källkod. Den bygger på Node.js, lagrar innehåll i Git och Markdown och stöder flera databasmotorer som PostgreSQL, MySQL och SQLite. Wiki.js kan distribueras lokalt, i molnet eller i containermiljöer (Docker/Kubernetes), och stöder autentisering via LDAP, OAuth2, SAML med flera. I denna guide installerar vi…