Old:PHP Downgrade from 5.2.3 to 4.4.8: Difference between revisions
(New page: <span id="top"></span> <div style="padding:0;margin:0; border-bottom:3px inset #000000"> {| | MPG UniCenter || '''PHP Downgrade from 5.2.3 to 4.4.8''' |} </d...) |
(Fix grammatical stuff) |
||
Line 12: | Line 12: | ||
'''Uniform Server 3.5-Apollo.''' | '''Uniform Server 3.5-Apollo.''' | ||
|} | |} | ||
The '''only''' reason for downgrading is to match your service provider's version of PHP. | |||
== A) Download PHP 4.4.8 == | == A) Download PHP 4.4.8 == | ||
Download full version of PHP 4.4.8 | Download the full version of PHP 4.4.8 | ||
# Create a new folder named '''c:\php448''' (alternatively save the file to any folder) | # Create a new folder named '''c:\php448''' (alternatively save the file to any folder) | ||
Line 23: | Line 23: | ||
:# Download this file: '''PHP 4.4.8 zip package''' [8,434Kb] - 12 Feb 2008<br>md5: 09ffff4b1a54bbadb8fee6acd85a2c1f | :# Download this file: '''PHP 4.4.8 zip package''' [8,434Kb] - 12 Feb 2008<br>md5: 09ffff4b1a54bbadb8fee6acd85a2c1f | ||
# '''Right click''' on file and select '''Extract All''', click '''NEXT''' (no need to change path), click '''NEXT''' again. | # '''Right click''' on file and select '''Extract All''', click '''NEXT''' (no need to change path), click '''NEXT''' again. | ||
== B) Install == | == B) Install == | ||
Start with a clean version of Uniform Server 3.5-Apollo and | Start with a clean version of Uniform Server 3.5-Apollo and install PHP 4.4.8 as follows: | ||
# '''Extract a new copy of Uniform Server''' to C drive (alternatively you can use any folder or drive) | # '''Extract a new copy of Uniform Server''' to C drive (alternatively you can use any folder or drive) | ||
Line 44: | Line 42: | ||
<li> '''Restore php.ini''': Copy php.ini from C:\Uniform Server to C:\Uniform Server\udrive\usr\local\phpSave the file to any folder. | <li> '''Restore php.ini''': Copy php.ini from C:\Uniform Server to C:\Uniform Server\udrive\usr\local\phpSave the file to any folder. | ||
</ol> | </ol> | ||
== C) Edit php.ini == | == C) Edit php.ini == | ||
Using a text editor open''' php.ini''' located in folder C:\Uniform Server\udrive\usr\local\php and change the following: | Using a text editor, open''' php.ini''' located in folder C:\Uniform Server\udrive\usr\local\php and change the following: | ||
# Locate the line: ''';extension=php_iconv.dll''' and change to '''extension=php_iconv.dll''' | # Locate the line: ''';extension=php_iconv.dll''' and change to '''extension=php_iconv.dll''' | ||
Line 54: | Line 51: | ||
# Locate the line: '''extension=php_pdo.dll''' and change to ''';extension=php_pdo.dll''' | # Locate the line: '''extension=php_pdo.dll''' and change to ''';extension=php_pdo.dll''' | ||
# Locate the line: '''extension=php_sqlite.dll''' and change to ''';extension=php_sqlite.dll''' | # Locate the line: '''extension=php_sqlite.dll''' and change to ''';extension=php_sqlite.dll''' | ||
== D) Edit httpd.conf == | == D) Edit httpd.conf == | ||
Open '''httpd.conf''' located in folder | Open '''httpd.conf''' located in folder C:\Uniform Server\udrive\usr\local\apache2\conf | ||
<pre> | <pre> | ||
Line 64: | Line 59: | ||
Change to: LoadModule php4_module "/usr/local/php/php4apache2.dll" | Change to: LoadModule php4_module "/usr/local/php/php4apache2.dll" | ||
</pre> | </pre> | ||
== E) Edit phpMyAdmin == | == E) Edit phpMyAdmin == | ||
Line 74: | Line 67: | ||
Change to: $cfg['Servers'][$i]['extension'] = 'mysql'; | Change to: $cfg['Servers'][$i]['extension'] = 'mysql'; | ||
</pre> | </pre> | ||
== F) Edit my-small == | == F) Edit my-small == | ||
Line 85: | Line 77: | ||
old_passwords=1 | old_passwords=1 | ||
</pre> | </pre> | ||
== G) Test - Expected error == | == G) Test - Expected error == | ||
Restart the servers | Restart the servers. From apanel click on '''phpinfo()''' and check that PHP 4.4.8 info is displayed. | ||
Now click '''phpMyAdmin''' (left menu) the following error is expected: | Now click '''phpMyAdmin''' (left menu) the following error is expected: | ||
Line 98: | Line 88: | ||
'''Reason''': | '''Reason''': | ||
PHP4 uses short password hashes as opposed to PHP5’s long | PHP4 uses short password hashes as opposed to PHP5’s long ones. Anyway it shows PHP4 is working and phpMyAdmin. | ||
To correct the above '''do not turn the servers off''' and follow these instructions: | To correct the above '''do not turn the servers off''' and follow these instructions: |
Revision as of 00:57, 10 February 2010
Uniform Server 3.5-Apollo. |
The only reason for downgrading is to match your service provider's version of PHP.
A) Download PHP 4.4.8
Download the full version of PHP 4.4.8
- Create a new folder named c:\php448 (alternatively save the file to any folder)
- Download and save the following file into the above folder:
- Goto: PHP Downloads
- Scroll down the page to: Windows Binaries
- Download this file: PHP 4.4.8 zip package [8,434Kb] - 12 Feb 2008
md5: 09ffff4b1a54bbadb8fee6acd85a2c1f
- Right click on file and select Extract All, click NEXT (no need to change path), click NEXT again.
B) Install
Start with a clean version of Uniform Server 3.5-Apollo and install PHP 4.4.8 as follows:
- Extract a new copy of Uniform Server to C drive (alternatively you can use any folder or drive)
- Start and stop the servers. Make sure they work and train any security software.
- Backup php.ini:
- Copy php.ini from C:\Uniform Server\udrive\usr\local\php to C:\Uniform Server
- Install PHP 4.4.8:
- Delete the contents of folder C:\Uniform Server\udrive\usr\local\php
- Copy the contents of folder C:\php448\php-4.4.8-Win32\php-4.4.8-Win32
To folder: C:\Uniform Server\udrive\usr\local\php - Copy php4apache2.dll from: C:\Uniform Server\udrive\usr\local\php\sapi
To folder: C:\Uniform Server\udrive\usr\local\php - Copy iconv.dll from: C:\Uniform Server\udrive\usr\local\php\dlls
To folder: C:\Uniform Server\udrive\usr\local\php - Copy libmysql.dll from: C:\Uniform Server\udrive\usr\local\php\dlls
To folder: C:\Uniform Server\udrive\usr\local\php
- Restore php.ini: Copy php.ini from C:\Uniform Server to C:\Uniform Server\udrive\usr\local\phpSave the file to any folder.
C) Edit php.ini
Using a text editor, open php.ini located in folder C:\Uniform Server\udrive\usr\local\php and change the following:
- Locate the line: ;extension=php_iconv.dll and change to extension=php_iconv.dll
- Locate the line: extension=php_mysql.dll and change to ;extension=php_mysql.dll
- Locate the line: extension=php_mysqli.dll and change to ;extension=php_mysqli.dll
- Locate the line: extension=php_pdo.dll and change to ;extension=php_pdo.dll
- Locate the line: extension=php_sqlite.dll and change to ;extension=php_sqlite.dll
D) Edit httpd.conf
Open httpd.conf located in folder C:\Uniform Server\udrive\usr\local\apache2\conf
Locate the line: LoadModule php5_module "/usr/local/php/php5apache2.dll" Change to: LoadModule php4_module "/usr/local/php/php4apache2.dll"
E) Edit phpMyAdmin
Edit the phpMyAdmin file: config.inc.php located in folder: C:\Uniform Server\udrive\home\admin\www\phpMyAdmin
Locate the line: $cfg['Servers'][$i]['extension'] = 'mysqli'; Change to: $cfg['Servers'][$i]['extension'] = 'mysql';
F) Edit my-small
Edit my-small Located in folder: C:\Uniform Server\udrive\usr\local\mysql\bin
Under this line port=3306 add the following two new lines: #Use old password encryption method (needed for 4.0 and older clients). old_passwords=1
G) Test - Expected error
Restart the servers. From apanel click on phpinfo() and check that PHP 4.4.8 info is displayed.
Now click phpMyAdmin (left menu) the following error is expected:
#1251 - mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client”
Reason:
PHP4 uses short password hashes as opposed to PHP5’s long ones. Anyway it shows PHP4 is working and phpMyAdmin.
To correct the above do not turn the servers off and follow these instructions:
- Open a command prompt (start > run > type cmd and press OK)
- Type the following and press return at the end of every line:
W: Cd usr\local\mysql\bin mysql -u root –p
- When requested enter the password root
- You are now at the MySQL command prompt. Type the following and press return:
SET PASSWORD FOR 'root'@'localhost' =OLD_PASSWORD('root');
Query OK indicates you have created a short password hash.
- Close the command prompt window (top right cross).
- Restart the servers; check you can access MySQL using phpMyAdmin.
You will need to update phpMyBackupPro:
- From apanel run phpMyBackupPro
- Login as root root,
- Select the configuration tab:
Change the MySQL password to root
Finally click Save Data
That completes the downgrade.
Ric |