Установка nginx + php-fpm + mysql

Имеем чистый VPS на который установили необходимый набор пакетов

Установка Nginx

http://wiki.nginx.org/Install

add-apt-repository ppa:nginx/stable
aptitude update
aptitude -y install nginx

Установка php-fpm

aptitude -y install php5-fpm php5-cli php5-mysql php5-gd php5-curl

Установка mysql

aptitude -y install mysql-server mysql-client

Дополнительная настройка конфигов:

В файле /etc/php5/fpm/php.ini ищем строку:

;cgi.fix_pathinfo=1

заменяем на:

cgi.fix_pathinfo=0

В файле /etc/php5/fpm/pool.d/www.conf

listen = /var/run/php5-fpm.sock
user = www-data
group = www-data

/etc/nginx/nginx.conf

user www-data;

Создаём конфиг для хоста blog.unixcoder.net
создаёи файл /etc/nginx/sites-available/blog.unixcoder.net

server {
	listen 80;
	# listen 443 ssl default_server;
	# listen [::]:443 ssl default_server;
	server_name blog.unixcoder.net;
	root /var/www/blog.unixcoder;
	index index.php index.html index.htm;
	
	access_log	/var/log/nginx/unixcoder.net_access.log;
	error_log	/var/log/nginx/unixcoder.net_error.log;
	autoindex off;

	location / {
		try_files $uri $uri/ =404;
	}

	location ~ \.php$ {
		#include snippets/fastcgi-php.conf;
	
		# With php5-cgi alone:
		#fastcgi_pass 127.0.0.1:9000;
		# With php5-fpm:
		fastcgi_pass unix:/var/run/php5-fpm.sock;
		
		# regex to split $uri to $fastcgi_script_name and $fastcgi_path
		fastcgi_split_path_info ^(.+\.php)(/.+)$;

		# Check that the PHP script exists before passing it
		try_files $fastcgi_script_name =404;

		# Bypass the fact that try_files resets $fastcgi_path_info
		# see: http://trac.nginx.org/nginx/ticket/321
		set $path_info $fastcgi_path_info;
		fastcgi_param PATH_INFO $path_info;

		fastcgi_index index.php;
		include fastcgi.conf;
	}

	location ~ /\.ht {
		deny all;
	}
}

И в /etc/nginx/sites-enabled создаём символьную ссылку

ln -s /etc/nginx/sites-available/blog.unixcoder.net /etc/nginx/sites-enabled/blog.unixcoder.net

Отключаем и убираем из автозапуска по умолчанию установленные сервисы

service apache2 stop
update-rc.d apache2 disable

Добавляем в автозапуск nginx, php5-fpm, mysql

update-rc.d nginx defaults
update-rc.d php5-fpm defaults
update-rc.d mysql defaults

Перезапуск сервисов

service nginx restart
service php5-fpm restart
service mysql restart