<?php
phpinfo();
?>
I would suggest creating a php file with the above contents, and place it into the root of both of your stores and compare the differences. virtual hosts can have different php configurations
At the end of the day, you need mcrypt to use Prestashop, since their Rijndael class still appears to require it.
You can also do a small test on the fresh install store that is working. Locate the Rijndael.php file in the classes folder, and search for line 124, which should be this line
$this->_iv . MCRYPT_RIJNDAEL_128 . $encrypted,
That line is part of the generateHmac function.
protected function generateHmac($encrypted)
{
$macKey = $this->generateKeygenS2k('sha256', $this->_key, $this->_iv, 32);
return hash_hmac(
'sha256',
$this->_iv . MCRYPT_RIJNDAEL_128 . $encrypted,
$macKey
);
}
I would suggest putting a die statement at the very beginning of that function, to show that it gets called on your working store.
protected function generateHmac($encrypted)
{
die();
$macKey = $this->generateKeygenS2k('sha256', $this->_key, $this->_iv, 32);
return hash_hmac(
'sha256',
$this->_iv . MCRYPT_RIJNDAEL_128 . $encrypted,
$macKey
);
}
If this function gets called, then it will immediately stop because of the die statement.