Ok,
I'm trying to do what I failed to do when I first started trying to make my own server and that's install each part separately. Since this is a learning project for me, I've learned so much by using XAMPP and then adjusting the settings as needed. So I've downloaded and installed Apache, MySQL, PHP5, and still getting stuck on phpMyAdmin.
It gives me the nice red box saying:
phpMyAdmin - Error
Cannot load mysql extension. Please check your PHP configuration.
So I took a look at my php.ini file and there wasn't a single extension one loaded there. No ext folder either. So I downloaded a zip version containing that folder and added it in the php.ini file as needed.
I restarted Apache, still no luck. I took a look at the error log and here's what I get:
- Code: Select all
client denied by server configuration: C:/Program Files (x86)/Apache Software Foundation/Apache2.2/phpmyadmin/libraries/
(/phpmyadmin/ is where i installed phpmyadmin at.)
Now I'm not sure what "server configuration" file I need to correct.
** Is this the config.ini.php file?
Now I looked in it and it has this line, which I'd guess is where this error message is coming from:
- Code: Select all
$conf['Servers'][$i]['extension'] = 'mysql';
So if I understand this correctly, this is calling on the mysql extension, which should be loaded by the php.ini file, correct? If so, why isn't it making the connection? And the php.ini file does get re-loaded when you restart Apache, even though the PHP5 was installed separate, correct?
***EDIT***
Ok, so I answered my question on the php.ini file and if it gets reloaded when you restart Apache. Yes it does.
I also see that the problem is when I look at my phpinfo(), it isn't showing that it loaded the mysql extension for some reason, because it's not listed there.
I looked at the error log for Apache again and it has a few lines like this
- Code: Select all
PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Program Files (x86)\\PHP\\ext\\php_mysql.dll' - The specified module could not be found. \r\n in Unknown on line 0
So then it's telling me that supposedly the php_mysql.dll doesn't exist in that directory path and it does. I verified the path. I don't know what the problem is here.
I copied the "ext" folder to a new directory C:\PHP\ext and changed the extension directory in php.ini and I get the same error, other than it's saying it can't be found in C:\\PHP\\ext\\php_mysql.dll . The file is clearly there. And it's a few others in the folder with it that I have enabled in php.ini it says it cannot find.
I did a test on a computer with XAMPP and I removed the php_mysql.dll, restarted Apache, and it gives the same error with that file missing, so the directory shouldn't be the problem. What am I missing?
Other extensions in that same folder are loading fine, such as php_zip.dll .
The only ones that aren't are php_mcrypt.dll, php_mssql.dll, php_mysql.dll, php_mysqli.dll, php_pdo_mysql.dll, php_pdo_odbc.dll, php_pgsql.dll, php_sqlite.dll. They are all in the same folder as the rest of the extensions.