Install Troubleshooting

Contents

Help! I'm having trouble installing Elgg

You'll want to first recheck that your server meets the technical requirements for Elgg. Are you sure that your server is not configured to run in cgi mode or safe mode? Have you verified that mod_rewrite is being loaded? Is the mysql apache being loaded?

Keep notes on steps that you take to fix the install. Sometimes changing some setting or file to try to fix a problem may cause some other problem later on. If you need to start over, just delete all the files, drop your database, and begin again.

I can't save my settings on installation!

Elgg relies on the mod_rewrite Apache extension in order to simulate certain URLs. For example, whenever you perform an action in Elgg, or when you visit a user's profile, the URL is translated by the server into something Elgg understands internally. This is done using rules defined in an .htaccess file, which is Apache's standard way of defining extra configuration for a site.

This error suggests that the mod_rewrite rules aren't being picked up correctly. This may be for several reasons. If you're not comfortable implementing the solutions provided below, we strongly recommend that you contact your system administrator or technical support and forward this page to them.

Instructions for testing mod_rewrite


mod_rewrite isn't installed.

Check your httpd.conf to make sure that this module is being loaded by Apache. You may have to restart Apache to get it to pick up any changes in configuration. You can also use PHP info to check to see if the module is being loaded.


The rules in .htaccess aren't being obeyed.

In your virtual host configuration settings (which may be contained within httpd.conf), change the AllowOverride setting so that it reads:

AllowOverride all

This will tell Apache to pick up the mod_rewrite rules from .htaccess.


You installed Elgg in a subdirectory

See the item below about installing in a subdirectory of your html root.

The install script redirects me to "action" when it should be "actions"

This is a problem with your mod_rewrite setup (see previous troubleshooting item).

DO NOT, REPEAT, DO NOT change any directory names!

I installed in a subdirectory and my install action isn't working!

If you're getting errors on installation like:

Not Found. The requested URL /elgg/action/systemsettings/install was not found on this server

Notice that the requested URL begins with elgg. That means you installed Elgg in a subdirectory rather than your site's html document root. You may need to give mod_rewrite a pointer to where your Elgg installation is.

  • Open up .htaccess in a text editor
  • Where prompted, add a line like RewriteBase /path/to/your/elgg/installation/ (Don't forget the trailing slash)
  • Save the file and refresh your browser.

Please note that the path you are using is the web path, minus the host.

For example, if your Elgg install is in:

/var/www/html/elgg/

and you view the site by going to http://example.com/elgg/.

Your RewriteBase line should look like:

RewriteBase /elgg/

I did everything! mod_rewrite is working fine, but still the 404 error

Maybe there is a problem with the file .htaccess. Sometimes the elgg install routine is unable to create one and unable to tell you that. If you are on this point and tried evrything thats written above:

  • check if it is really the elgg-created .htaccess (not only a dummy provided from the server provider)
  • if it is a dummy, use the htaccess_dist (rename it to .htaccess)and edit it in a texteditor, you'll find the entry RewriteBase commented out with an "#"
  • delete the "#" and add your path (i.e.:RewriteBase /path/to/your/elgg/installation/ Don't forget the trailing slash)

There is a white page after I submit my database settings

Check that the Apache mysql module is installed and is being loaded.

I'm getting a 404 error with a really long url

If you see a 404 error during the install or on the creation of the first user with a url like: http://example.com/homepages/26/d147515119/htdocs/elgg/action/register that means your site url is incorrect in your sites_entity table in your database. This was set by you on the second page of the install. Elgg tries to guess the correct value but has difficulty with shared hosting sites. Use phpMyAdmin to edit this value to the correct base url.

I am having trouble setting my data path

This is highly server specific so it is difficult to give specific advice. If you have created a directory for uploading data, make sure your http server can access it. The easiest way to do this is give it permissions 777.

Make sure the path is correct and ends with a /. You can check the path in your database in the datalists table.

If you only have ftp access to your server and created a directory but do not know the path of it, you might be able to figure it out from the www file path set in your datalists database table. Asking for help from your hosting help team is recommended at this stage.

If your server uses PHP in the deprecated safe mode, you may need to add the data directory to the open_basedir restrictions. Ask your host for more information.

I am having problems running on MAMP

On certain versions of MAMP, Elgg will either fail to install or have intermittent problems while running.

This is a known issue with MAMP and is related to the Zend Optimizer. Until Zend/MAMP have resolved this issue it is recommended that you turn off the Zend Optimizer in your PHP settings.

I can't validate my admin account because I don't have an email server!

While it's true that normal accounts (aside from those created from the admin panel) require their email address to be authenticated before they can log in, the admin account does not.

Once you have registered your first account you will be able to log in using the credentials you have provided!

I'm installing over an existing Elgg classic install and am getting all kinds of errors (e.g. 500 Internal server error)

Don't!

Elgg 1.0 is an entirely new codebase and data model, and is not backwards compatible with Elgg Classic! Additionally, it has different installation requirements.

You must install Elgg 1.0 to a new database, and in a different directory on your server.

We will be providing a way of migrating between 0.92 and 1.0 in due course.

Installation breaks with "Parse error: syntax error, unexpected T_NEW"

Elgg is not running under PHP 5.

Remember, PHP has three components - the php module, php cli and php cgi. Running php -v on the console and getting 5.x.x back does not necessarily mean that the apache module is running PHP 5!

Confirm you have PHP 5 installed and activated as an apache module.

I have tried all of these suggestions and I still cannot install Elgg

It is possible that during the process of debugging your install you have broken something else. Make sure that you have confirmed that your server meets Elgg's technical requirements. Test your mod_rewrite. Then do a clean install (drop your elgg database, delete all the files in your elgg directory, and start the process again).

If that fails, you may want to seek the help of the Elgg community by posting at the Elgg users google group or the Elgg community site. Be sure to mention what version of Elgg you are installing, details of your server platform, and any error messages that you may have received including ones in the error log of your server.

Search docs