Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

I just transfered my website from shared hosting to VPS, I installed all the backup from previous website to the VPS, Everything was fine, My website was functioning all perfect, But I was not able to see wp-admin page,

When I hit on url "mywebsite.com/wp-admin", I get a blank white page, I disabled all plugins and themes by renaming the folder names, Then I was able to login, no white screen was there, After digging my head into it for long time, I found that there is problem with the plugins folder, My theme is all up-to-date, and works fine without any errors

If I de-activate all the plugins, then I don't get any blank white screen during login, but if any one plugin is activated the I get white blank screen on wp-admin page,

This is not it, when trying to update any plugin or theme I am getting this message:

Unpacking the update…

Notice: Undefined offset: 1 in /home/admin/onlinemba.co.in/wp-admin/includes/class-ftp-sockets.php on line 93

Warning: Invalid argument supplied for foreach() in /home/admin/onlinemba.co.in/wp-admin/includes/class-wp-filesystem-ftpsockets.php on line 299

Notice: Undefined offset: 1 in /home/admin/onlinemba.co.in/wp-admin/includes/class-ftp-sockets.php on line 93

Installing the latest version…

Notice: Undefined offset: 1 in /home/admin/onlinemba.co.in/wp-admin/includes/class-ftp-sockets.php on line 93

Warning: Invalid argument supplied for foreach() in /home/admin/onlinemba.co.in/wp-admin/includes/class-wp-filesystem-ftpsockets.php on line 299

Incompatible Archive.

Plugin upgrade failed

.

(I have included define("WP_DEBUG",true); to wp-config file, after @Backie suggestions, so I am getting errors) I am not able to update my wordpress, but I did it manually, I am having the latest version of wordpress, I am not able to update my any plugins and themes.

share|improve this question
    
Add define("WP_DEBUG",true); to your wp-config.php and then try it all again. You'll be missing some sort of php extenstion. The error messages will give a clue to which one. –  Backie Jan 27 '11 at 11:12
    
@Backie I included that, but no changes, still I am getting blank screen if I activate any themes now even twenty ten giving me blank white page, –  ntechi Jan 27 '11 at 11:32
add comment

2 Answers

up vote 1 down vote accepted

Could be a whole host of problems but it seems you've tracked it to a plugin. Try deleting the entire plugin directory and re-downloading your plugins. It is also possible that something went wrong during the transfer (some files didn't transfer....became corrupt, etc.). If worst comes to worst, try the transfer again.

You can also try replacing what's in the class-ftp-sockets.php file with this.

share|improve this answer
    
Manheim, thanks now my plugins are updating –  ntechi Jan 28 '11 at 6:58
    
You're very welcome. –  manheim Jan 30 '11 at 0:04
add comment

FTP Sockets are usually only used if they are defined in wp-config.php or if none of the other update methods will work. Check your wp-config.php and see if yours is defined.

The default argument is:

define('FS_METHOD', 'direct');

The following methods are also available:

  • direct (default) - PHP file system functions
  • ssh - SSH PHP Extension
  • ftpext - FTP PHP Extension
  • ftpsockets - PHP socket extension

The problem could be that settings are defined in your database but not available to use on the new VPS.

To check go to yourdomain.com/wp-admin/options.php and delete the entry for ftp_credentials

It is also possible that there are file ownership / permissions issues with the new VPS. On the shared host PHP was probably running as your username. On the VPS it will be either running as nobody or www-data.

To fix this create a web accessible file with the following code in it and name it info.php

<?php
//DELETE THIS FILE WHEN YOUR DONE FOR SECURITY REASONS
phpinfo();

?>

Access the file with a browser and look through the info to find the username entry at the top of the output.

Access your VPS from SSH and run the following command:

chown nobody:nobody /path/to/your/wordpress/wp-content/ -R

Replacing nobody:nobody with whatever username php is running under.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.