Next Spaceship

Configure PHP-FPM and Nginx in Low Memory Servers

| Comments

Recently, I registered an Amazon EC2, ie Elastic Compute Cloud, with a free tier for the first year. The machine has only 600M memory. That is so few that it took me a few days to optimize my configuration files to make my blog and other web service run on this machine.

Before I use EC2, my blog is based on LAMP(Linux, Apache, MySQL, PHP). I decided to replace it with LNMP(Linux, Nginx, MySQL, PHP), since Nginx is said to be more efficient than Apache. To install all these is simple:

How to Solve Broken Pipe Message in SSH Session

| Comments

Sometimes my SSH session disconnects with a Write failed: Broken pipe message. What does it mean? And how can I keep my session open?

It’s possible that your server closes connections that are idle for too long. You can update either your client (ServerAliveInterval) or your server (ClientAliveInterval).

Send Email With PHP in UTF-8

| Comments

In my previous article Configure Mail Service with PHP Mail Function and Postfix, I described how to set up an environment to send mail with php on Linux.

Here, I will solve an issue which met by a lot of people, confused but don’t know how to do: How to send mail in UTF-8? Here I will tell you how to send an email with not only a UTF-8 subject but also a UTF-8 content. It’s simple. Just read the following code. Quote your subject with '=?UTF-8?B?' and '?='. You may choose to use HTML to edit your email content, just don’t forget to declare UTF-8 character set. That’s all.

Resolve Hg Conflicts Manually

| Comments

This artical tells about a simple method to resolve Hg conflicts. It doesn’t use any 3-party tool to merge your code, but only use emacs to edit your conflicts file and tag a resolved tag. So don’t apply it to merge big files with a lot of conflicts.

Configure Network Using ifconfig and route

| Comments

Setting up your network consists of three steps. First we assign ourselves an IP address using ifconfig. Then we set up routing to the gateway using route. Then we finish up by placing the nameserver IPs in /etc/resolv.conf.

How To Make a Windows Installer

| Comments

Introduction

There are many tools which can be used to make an installer, like NSIS, Install Shield, Advanced Installer, WiX, InnoSetup and even Visual Studio. Here I just show you how to make an installer by NSIS. NSIS (Nullsoft Scriptable Install System) is a professional open source system to create Windows installers. NSIS is script-based, which means you configure your installer by a script. That makes it small and flexible.

A Discrete Cosine Transform Demo

| Comments

The Discrete Cosine Transform (DCT) algorithm constitutes an integral component of contemporary image/video processing applications.

The formal definition of DCT is:

\[X_k = \sum\limits_{n=0}^{N-1}{x_n}\cos{\left[\dfrac{\pi}{N}\left(n+\dfrac12\right)k\right]}\quad k=0,\ldots,N-1.\]

Left-handed Mouse Cursors

| Comments

I made a set of left-handed mouse cursors so that I can use my left-handed mouse more comfortably.

I just used a tool _ArtCursors _to import the standard cursors from Windows XP, and edited the cursors in ArtCursors, flipping and setting the hot-spot for each.

Now,  have a look:

Netcat File Transfers

| Comments

In a very simple way it can be used to transfer files between two computers. You can create a server that serves the file with the following:

Obtain The Title Of A Website

| Comments

The idea is to retrieve the html file of the website and parse it to find the content between <title> and </title>.

To get the html file, we need a library in C++, as the standard library has no such functions. I choose the libcurl library, and you can download it here: http://curl.haxx.se/libcurl/.