jonasnordstrom.se har flyttat från Binero till Tilaa

Igår flyttade jag hela sajten till Tilaa, som är en holländsk VPS, där jag kör nginx och php-fpm på Gentoo Linux.

Även Topp30 och Fredagswhisky (två mycket små sajter)  ligger numera på Tilaa. Orsaken till flytten är förstås att jag vill ha full koll på mina WordPress-installationer. Jag vill kunna prova olika tekniker, mäta prestanda, göra lite okonventionella prestandaoptimerimeringar, få SSH-access(!) och framförallt lära mig mer om serversidan av webbprojekt.

Jag har inget otalt med Binero, de har alltid (nästan …) fungerat bra, även om jag fortfarande låg på old.binero.com!

Om sajten svajar lite den här första tiden så vet ni alltså vad det beror på. Lite vägarbete.

 

WordPress kickstart, del 2

Som jag lovade i kommentarerna till förra inlägget, här kommer scriptet som låter dig sätta upp en WordPress-site under minuten. Perfekt för utveckling och test med andra ord.
Jag förutsätter en del i koden. Till exempel bör du ha nginx som webbserver med en apachelik struktur för virtual hosts, dvs en katalog /etc/nginx/sites-available där alla virtual hosts är definierade, och en katalog /etc/nginx/sites-enabled, där de för tillfället aktiverade servrarna är inlänkade.

Men här är hela härligheten, lycka till. Tänk på att detta använder jag bara på min egen utvecklings-server, inte i någon delad miljö. Det finns ingen kontroll av input eller andra säkerhetsåtgärder. Använd på egen risk.

###########################################
# Constants, set and forget
###########################################
# temp storage for the wordpress tarball
TMP_STORAGE=wptemp

# web root for the wordpress site
WWWROOT=/var/www

# Privileged db use/pwd for creating database and granting rights
DBROOT=badass
DBROOTPWD=badass

# Database owner/pwd for the WordPress tables
DBUSER=dbuser
DBPWD=dbuser

# user:group for the web server
WWWUSER=nginx
WWWGRP=nginx

# network device used for detecting external ip address
DEVICE=eth0

###########################################
# ok, no touching down there

# Get the WordPress stuff, the nightly build, unzip it
cd $TMP_STORAGE
wget http://wordpress.org/nightly-builds/wordpress-latest.zip
unzip wordpress-latest.zip

# Get the site name
echo -n "Domain name? : "
read -e WP_DIR

# mv the WordPress files to their final destination. 
# we will add web server config later
cp -R wordpress ${WWWROOT}/${WP_DIR}
rm -rf wordpress*

# Create virtual host config for nginx. 
# Use the template below and then replace the site name
ngx_template=$(cat < /etc/nginx/sites-available/${WP_DI
R}.conf
ln -s /etc/nginx/sites-available/${WP_DIR}.conf /etc/nginx/sites-enabled/

# Create mysql database
dbname=${WP_DIR//[\.-]/_}
mysql -u ${DBROOT} -p${DBROOTPWD} < ${WWWROOT}/${WP_DIR}/wp-config.php

chown ${WWWUSER}:${WWWGRP} ${WWWROOT}/${WP_DIR}/wp-config.php
rm ${WWWROOT}/${WP_DIR}/wp-config-sample.php

# Reload web server
/etc/init.d/nginx reload

echo "Done!"
echo "Add this to your hosts file:"
echo ` ifconfig ${DEVICE} | grep inet | grep -v inet6 | cut -d ":" -f 2 | cut -d
 " " -f 1` ${WP_DIR}

WordPress kickstart

Det går ganska fort att installera WordPress. Med ett enkelt bash-script går det ännu fortare.
Så här gör jag för att installera en ny WP-sajt på min gentoo-server med nginx som kör i en virtualbox-image på min Macbook Pro.

Scriptet laddar hem senaste nightly build av WordPress, packar upp den, skapar en ny virtual host, skapar databas och användare samt modifierar wp-config.php. Efter det behöver jag bara lägga in det nya host-namnet i /etc/hosts och sajten är uppe.

Unable to display content. Adobe Flash is required.