wordpress hosting - vpn - cloud - statistiekservice - email

LinuxPro stapt over naar http/2

Het zal wellicht de gemiddelde gebruiker een worst wezen maar LinuxPro draait nu met NGINX met het http/2 protocol. Het werd de hoogste tijd voor een opvolger van het oude HTTP protocol. We hebben een tijd met een tussenvorm gedraaid: SPDY maar dat is nu ingehaald door http2. Overigens schijnt Apache ook in experimentele fase http2 te ondersteunen.

Het nietuwe protocol wat vastgelegd is onder RFC7540 zorgt voor een sneller en veiliger internet en wie kan daar nou op tegen zijn?  Door compressie en versleuting wordt het (voorlopig in ieder geval) een stuk moeilijk om onderschepte data te decoderen en door de compressie komt niet alleen een verzoek om een pagina op te vragen sneller aan maar ook de pagina zelf. 

We zijn nog aan het finetunen oa. met de SSL ciphers om tot een zo snel en veilig mogelijke site te komen voor een zo breed mogelijk publiek. Heel oude browsers zullen overigens met deze techniek, net zoals met SPDY niet om kunnen gaan. 

Uitgebreidere documentatie vind je hier: https://http2.github.io/

WordPress + Redis = supersnel

Hierbij onze configuratie van Fedora, nginx, WordPress en Redis. Deze combinatie leidt tot het supersnel laden van oa. deze website.

  1. Download en installeer de redis-server.
  2. Plaats de predis.php file in de root van je WordPress installatie
  3. Vervang je huidige index.php file
  4. Zet andere cache zoals memcache of APC uit

Download en installeer de redis-server

Ga naar http://redis.io/download en download de meest recente versie. Het compileren is eenvoudig:


  tar xzf redis-[version].tar.gz
  cd redis-[version]
  make
  make install

Je start de redis server met ./redis-server & of download het start/stop script en plaats het in /etc/init.d

 

Plaats de predis.php file

Download de predis.php file en plaats deze in de root van je WordPress installatie. Deze file wordt aangeroepen door de zo dadelijk te plaatsen aangepaste index.php en vormt de interface naar de redis-server.


Vervang je huidige index.php

Hernoem je huidige index.php naar bijvoorbeeld index.php.org en plaats de index-with-redis.php in je root directory WordPress en hernoem deze naar index.php. Er staat drie configuratieregels in die je kan aanpassen:


  // change vars here
  $cf = 0; // set to 1 if you are using cloudflare
  $debug = 0; // set to 1 if you wish to see execution time and cache actions
  $display_powered_by_redis = 1; // set to 1 if you want to display a powered by redis message with execution time, see below

 

Zet andere cache uit

Andere cache mechanismes zoals APC of memcache heb je niet meer nodig en kunnen dus uitgeschakeld worden. In de meeste distributies kan dit door in de /etc/php.d directory de configuratiefile te renamen naar bijv. apc.ini.uit zodat deze niet meer ingelezen wordt. Wel even php-fpm herstarten.

 

NGINX en Zoneminder

Zoneminder is een van de weinige en redelijk CCTV programma's op linux. Zoneminder kan bijv. live streams van meerdere types camera's aan zoals ip-camera's, usb camera's en video caputerboards. Zoneminder heeft motion detection en maakt daarvan een filmpje en/of kunnen andere acties door de gedetecteerde beweging worden getriggerd. Een alternatief voor Zoneminder is Xeoma maar dat is een commercieel pakket.

Voor de streaming maakt Zoneminder gebruik van iets dat simple CGI heeft en dat wordt in Apache ondersteund, niet in NGINX. De oplossing hiervoor ligt in het maken van een daemon die middels xinetd wordt aangeroepen en deze binnen NGINX aan te roepen.

Op de site van Puccinelli staat beschreven hoe je dit voor elkaar krijgt.  De performance is aanzienlijk verbeterd t.o.v. Zoneminder met Apache.

NB: (De vertaling volgt hier binnenkort) Ik heb 't getest en het werkt