Blog Posts

Understanding the Nginx Configuration Inheritance Model

The nginx configuration model is a big improvement over the Apache HTTPd one. But when you dive in deeper there are some quirks to be aware of. Without knowledge of the fundamentals it’s easy to run into situations where you get unexpected behaviour. To make sure you always know how…
Nginx, Technology

Hong Kong Tur

Området jeg bor i her i Hong Kong hedder Mong Kok og er det område i verden med flest mennesker per km2 med 130,000 mennesker. Dette ses tydeligt når man går på gaden, jeg har prøvet at få et billeder som viser antallet af mennesker men det er lidt svært…
Travel

Securing Nginx + PHP When Using Path Info

Remember register globals? Remember how you had to code as if it was off, because it might be? Remember how you had to consider the security implications of it being on, because it might be? The might be and might not be is something which has plagued a lot of…
Nginx, PHP, Security, Technology

The Fun that is UTF-8 Support in PHP

Lately I’ve been working with a friend on a daily-deal aggregator. The Groupon-like sites are popping up everywhere and the market for aggregators is still fairly unfilled. My project, Alladeals, target the Swedish daily deals market and as such it needs to support Swedish characters. In future it might have to support other languages as well so I decided that UTF8 was the way to go. Since most webpages are encoded in UTF-8 these days it has been fairly painless to actually work with UTF-8 in PHP, that is, until yesterday.

PHP, Technology

Optimizing Nginx for High Traffic Loads

While we cannot optimize the load time of individual connections we can ensure that nginx has the ideal environment optimized for handling high traffic situations. By high traffic I mean several hundreds of requests per second, the far majority of people don’t need to mess around with this, but if you do, are curious or simply want to be prepared then read on.

Implementing Full-Page caching with Nginx and PHP

This is part two in my caching series. Part one covered the concept behind the full page caching as well as potential problems to keep in mind. This part will focus on implementing the concept in actual PHP code. By the end of this you’ll have a working implementation that can cache full pages and invalidate them intelligently when an update happens.