Here’s what you missed:
Installing nginx with php-fpm with varnish on the front end will make your WordPress install fly 50 times faster.
If you’re using apt-get, you can just use:
apt-get install php-fpm
Or try this guide on how-to forge.
Here’s the install process I used using PHP 5.3.3 on OS X:
sudo ./configure --prefix=/usr/local --enable-fpm \
--with-fpm-user=daemon --with-fpm-group=daemon \
--with-mcrypt --with-mysql=/usr/local/mysql --with-zlib \
--enable-mbstring --disable-pdo --with-curl --disable-debug \
--disable-rpath --enable-inline-optimization --with-bz2
--with-zlib --enable-sockets --enable-sysvsem \
--enable-sysvshm --enable-pcntl --enable-mbregex \
--with-mhash --enable-zip --with-pcre-regex \
--with-iconv=shared,/usr
make && make install
cp sapi/fpm/php-fpm.conf /usr/local/etc/php-fpm.conf
# edit php-fpm.conf with the right paths
cp sapi/fpm/php-fpm /usr/local/sbin/php-fpm
cp init.d.php-fpm /etc/init.d/php-fpm
/etc/init.d/php-fpm start
If you get an error message it’s probably because you didn’t go through the config to set things up.
The next part is nginx.
./configure --prefix=/usr/local/nginx && make && make install
My conf/nginx.con looks like this. My sites-enabled/default.conf looks like this. My conf/fastcgi_params file is here.
I just start nginx with /usr/local/nginx/sbin/nginx and I’m good to go.
The quote that stuck with me the most was what Josh Highland said about caching:
“You should use WordPress Cache Plugins. It’s like printing money. It’s free!”
For adding your own contact form, I learned about Contact Form 7. You can ditch WuFoo if you have this configured on your WordPress.
There’s also Pods, which is like contact-form-7 except it’s a whole framework for creating your own content types and making them show up where you want.