I just moved moved my drupal site from one host to a new host. I did the following steps.

1. Made a back of old old site
2. Made a backup of database
3. Uploaded old site to new host
4. Created a new database and imported old database into it
5. Changed settings.php to reflect new database
6. Changed name servers to point to new host

When the site loads I get the following error:

Fatal error: Call to undefined function _system_theme_data() in…. includes/theme.inc on line 439

Drupal is a huge learning curve for me, so I have no idea how to fix this. If anyone has any ideas, that would be greatly appreciated.

Comments

zenessa’s picture

I now have a new error Fatal error: Call to undefined function user_access() in /includes/menu.inc

cog.rusty’s picture

A few things to check:

- Your PHP memory_limit is big enough on your new server (see http://drupal.org/node/207036). Depending on the modules that you have installed, this may mean 16M or 64M.

- The files "system.module" and "user.module" exist under "modules/system/" and "modules/user/". It is not allowed to move them anywhere else. (Sometimes a slip of the mouse in the FTP window can pull them inside a directory and misplace them.)

- The files are undamaged, not zero length and they contain the functions mentioned in the error messages ("_system_theme_data" and "user_access")

- The files are readable by the web server (permissions 644), and their containing directories, "system" and "user", have permissions 755.

- There are no duplicate copies of the files "system.module" and "user.module" anywhere else under Drupal, for example in a backup directory.

- In the "system" table in the database, the "system" module and the "user" module are enabled (status=1) and have the correct paths ("modules/system" and "modules/user").

Also try running update.php.

zenessa’s picture

Thanks!
Im not sure exactly what worked, but I tried all suggestions and it worked again.

Polyspiral’s picture

I did the above and I had the same problem, but now my home page looks normal but none of the links work, when I go to update.php it ran it as if it was working and then it was the same as before, the home page look fine but comes up with a 'page not found' type error

Please help and thanks

cog.rusty’s picture

Check if www.example.com/user does not work but www.example.com/?q=user works.

If this is the case, make sure that Drupal's .htaccess file exists.

Polyspiral’s picture

Thank you Thank you Thank you

Dreamweaver by default doesn't show hidden files and I realized I could never see the .htaccess files once I had upladed them. So I made it show the hidden files, downloaded it from the first server and uploaded it.

WORKED!

I was nearly crying over this and you saved me

xxxxxx

nikikelly74’s picture

I wonder if you could recommend anything for my similar situation.

I just moved moved my drupal site from one host to a new host. I did the following steps.

1. Made a back of old old site
2. Made a backup of database
3. Uploaded old site to new host by installing drupal and copying over all /sites/all and /sites/default
4. Created a new database and imported old database into it
5. Kept the new settings.php to reflect the new database

- database is being seen and site is showing if I rename my modules folder - seems that there is something awry with possibly a base url or something b/c the modules and themes folder contain references to the old server location.

My error looks like this:
Fatal error: require_once() [function.require]: Failed opening required '/var/www/html/drupal/sites/all/modules/ctools/includes/../../../../../../oldsitename/drupal/sites/all/modules/views/export.inc' (include_path='.:/php/includes:/usr/local/lib/php:/usr/local/php/lib/php') in /var/www/html/drupal/sites/all/modules/ctools/ctools.module on line 113

I actually did go through and find/replace all instances of oldsitename with what I thought was the new site name and it is still showing this error which makes me think it's something in the database.

I'm in Drupal 7. Thank you for any tips you may have....I am desperate as this site was almost ready to launch and now I fear the worst.

drscales’s picture

You might also want to check your host isn't running php in 'safe mode' for your domain.