Bug in Wordpress setup script (with workaround)

May 11, 2019 380 views
DigitalOcean WordPress Ubuntu 16.04

I was trying to pre-stage some stuff before taking my WordPress droplet live tonight, and I ran across a bug in the /opt/digitalocean/wp_setup.sh script. The documentation says that if you aren’t ready to set up your site yet you can just hit Control-C and the script will run next login. Well… kinda…

The following lines are executed before the user has an opportunity to hit Control-C:

# Enable WordPress on firstlogin
mv /var/www/html /var/www/html.old
mv /var/www/wordpress /var/www/html

Well, when you log in a second time, these statements get executed again and the WordPress content ends up in /var/www/html.old/html

The workaround is:

mv /var/www/html.old/html /var/www/wordpress
mv /var/www/html.old /var/www/html

The fix would be to move these two lines later in the script, or to add some conditional logic to prevent them from being executed twice.

2 Answers

Thanks, this saved my life.

I just disabled the two lines of “mv” part and works great.

# mv /var/www/html.old/html /var/www/wordpress
# mv /var/www/html.old /var/www/html

Thank you for this! When working on a site that doesn’t have a domain name yet, I skip past the setup script a bunch. This is a super helpful reminder and concrete explanation of what happens.

Have another answer? Share your knowledge.