Dev Troubleshooting
Contents
Is your system updated?
If you are running your own system and not a Dreamhack, make sure that your system is updated. Dreamwidth code is best supported by Ubuntu. To update all your packages, you should be logged in as root and then run:
apt-get update apt-get upgrade
Is your code updated?
There are instructions to update your DW code at Dev Maintenance.
Restarting Apache
Sometimes stopping and restarting Apache can help. If you are on a Dreamhack use the commands:
stop-apache start-apache
If you are on your own machine, probably something closer to:
sudo /etc/init.d/apache2 stop sudo /etc/init.d/apache2 start
Restarting Apache is also needed when you've changed Perl code.
Apache access and error logs
The access and error logs for Apache (the web server) are located at /var/log/apache2/access.log
and /var/log/apache2/error.log
for a default Ubuntu installation. Loading blank pages are probably the result of mod_perl crashing (often called a "segfault").
You can see the latest access and error messages by using the tail command:
sudo tail /var/log/apache2/error.log
Apache fails to start
If you've been coding and Apache fails to restart, make sure to check the error logs for the problem:
sudo tail /var/log/apache2/error.log
Maybe you are missing packages
If you are not on a Dreamhack, consider that you might be missing some packages. For instance, OpenID no longer works unless you have the libraries installed on your system:
apt-get install libnet-openid-consumer-perl libnet-openid-server-perl
You can run a check config to see if it has any warnings for you:
bin/checkconfig.pl
Correct version of Perl
You need a 64-bit Perl to run Dreamwidth. If the Linux distribution you're using is 64-bit, then you should have a 64-bit version of Perl already. If you're not sure, though, this command will tell you:
perl -e 'print unpack("Q", pack("Q", length(sprintf("%b", ~0)))) . "-bit\n";'
This should print out "64-bit". If it prints anything else, or gives you any errors (like "Invalid type 'Q'"), it's not 64-bit.
Also, the version of Perl used in the "Lucid" distribution of Ubuntu (5.10.1-8ubuntu2.1) has a bug in it that the Dreamwidth code can run into; if you're using that version, you may want to upgrade. Perl 5.8 is no longer considered supported for Dreamwidth development as of 2012 July 18.