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}