The next error in the upgrade from WordPress 2.0.7 to 2.1 is:

Fatal error: Call to undefined function curl_init() in E:\…..\wordpress\wp-content\plugins\mytube\ytube.php on line 216

I am using the MyTube plug-in to insert YouTube videos on my blogs.

The PHP manual for CURL states:

Note to Win32 Users: In order to enable this module on a Windows environment, libeay32.dll and ssleay32.dll must be present in your PATH.

On my Apache 2.0.54 / PHP 5.2.0 / MySQL 4.1.22 windows XP system, that meant copying the two files from “\Program Files\PHP5\” to “\Program Files\Apache Group\Apache2\modules\php\”

This did not work. I then tried to move them into “\Program Files\Apache Group\Apache2\bin\” but they were already there!

From the phpinfo file (which I permit only to a logged-in administrator user on my webserver because it leaks the MySQL passwords), I noted that the php.ini file still had the line:

include_path = “c:\program files\php4;c:\program files\jhead”

when the new version of PHP was in the directory “c:\program files\php5″.

Rectifying this also failed to remove the problem.

I tried stopping and restarting Apache, with no success.

I notice my online phpinfo() reveals that

curl

CURL support enabled
CURL Information libcurl/7.13.1 OpenSSL/0.9.7f zlib/1.2.2.2 libidn/0.5.15

The solution was to enable the module in php.ini by uncommenting the line:

extension=php_curl.dll

and then restarting Apache.

This is not really an upgrade problem - I guess I only noticed it when I uploaded the recent data from online to the offline site, and then upgraded WordPress.