Partway through installation: 500 Internal Server Error

A couple steps into the installation process I encounter a 500 Internal Server error

Directly after entering my DB credentials through the installation process, the error occurs on this link/page:
http://xxxxxxxx.com/index.php?action=tablesCreation&trackerStatus=500&module=Installation

I’ve tried completely removing the files/reinstalling; settings proper permissions; etc.

If anyone can offer any sort of guidance as to what server settings are/might be affecting this, it’d be much appreciated.

You’ll have to look at your server logs.

In some cases, you may even have to enable this in php.ini, e.g.,


error_reporting = E_ALL | E_STRICT
display_errors = On
log_errors = On
error_log = /var/log/a-writeable-path/error.log

Hmm - so the only error that gets written is the following:
[07-Apr-2011 00:27:45] PHP Fatal error: Class ‘PDO’ not found in /home/xxxxx/public_html/_admin/sitetracking/core/Tracker/Db/Pdo/Mysql.php on line 66

This error was written 5 times from installation start to failure…

Is this something I should google, or is there a quickfix for this problem?

I’ve recompiled PHP with PDO, and am now experiencing the following error:
[07-Apr-2011 10:32:49] PHP Fatal error: Class ‘Piwik_ProxyHeaders’ not found in /home/xxxxx/public_html/_admin/sitetracking/plugins/Installation/Controller.php on line 849

No idea what to do now…
Argh!

This is my config.nice for building php 5.3.6:


#! /bin/sh
#
# Created by configure

'./configure' \
'--with-mysqli=mysqlnd' \
'--with-pdo-mysql=mysqlnd' \
'--with-zlib' \
'--enable-zip' \
'--with-gd' \
'--with-curl' \
'--enable-mbstring' \
'--enable-debug' \
"$@"

So, I am still encountering the Internal Server Error 500 – and now with absolutely no errors from PHP (I’ve straightened out all the errors that were being printed to my errorlog that now seem to have had nothing to do with this).

The system check at the start of installation of Piwik passes with flying colors.

Database setup is fine, I click next, and then when redirected here:
http://xxxxxxxxx.com/index.php?action=tablesCreation&module=Installation
I encounter the Internal Server Error 500.

So like I said, no error is being produced by PHP now (error_log is empty).
I checked my apache log, and the only error that gets printed is the following:
“Premature end of script headers: index.php, referer http://xxxxxxx.com/index.php?action=databaseSetup

That’s it… that’s all I’ve got!
If anyone can shed some light on this issue, I’d be very thankful!

I assume that your webhost would know about what is happening, this is the case the the system fails and doesn’t log things properly, so it is not a piwik bug sorry! if you find the solution please post it here :slight_smile:

This is on a dedicated server, so for all intents and purposes there is no ‘webhost’ to explain what is happening.

I’m also well aware this isn’t a Piwik bug, it’s clearly a server issue – I’ve posted here hoping someone in the community might recognize this issue, or perhaps be able to offer some general direction as to the likely cause.

I’m thinking it may have something to do with a MySQL extension (MySQLi in particular), as either PDO or MySQLi is required by Piwik…
I just don’t have the technical knowledge in this specific regard to be able to speculate as to how a PHP extension might be causing an Internal Server Error.

if you use MYSQLI try to switch to PDO.

But, my instinct tells me that some errors are not logged. So I would look at logging settings to make sure you enabled all logging. I haven’t yet heard of errors not logged by apache, and seeing the error would tell you what is wrong

Looking at your phpinfo, you’ll have to recompile php to add --with-pdo-mysql=mysqlnd

While you’re at it, add --enable-debug.