Posted by jsorgen on February 24, 2011 at 5:51am
I searched the documentation - without success. But it doesn't seem like an uncommon problem.
I jumped in and tried installing D7. New domain name, new hosting package. Uploaded and extracted D7. Contacted hostgator and couldn't solve this. Below is the error:
Error
PHP extensions Disabled
Drupal requires you to enable the PHP extensions in the following list (see the system requirements page for more information):
* pdo
Error
Database support Disabled
Your web server does not appear to support PDO (PHP Data Objects). Ask your hosting provider if they support the native PDO extension. See the system requirements page for more information.
What am I missing??
~

Comments
Oh, Hostgator
This page says they support PDO, which is indeed required for Drupal 7's database layer. The fact that they say they support should provide you some leverage.
http://support.hostgator.com/articles/php-modules
I know sometimes it's possible to target different PHP versions in a shared hosting package. I'd create a little php file with phpinfo() in it, see if PDO is, in fact, enabled on your account. If it's not, get after Hostgator about it. They're not my favorite shared web host, (and you'll hear a lot of disparaging words around here about shared hosting and Drupal generally), but I'm pretty sure it will work.
Solved
Starting over, I deleted all the files and the database. I extracted D7 and made the db again.
The only error at first was that
register_globalswas enabled. There were no pdo errors.Original error was fixed with this line in the
php.inifile (didn't exist yet) in public_html:register_globals = OffTried the install again and register_globals was fixed, BUT the pdo errors (original post) showed up.
The solution was to add these four lines to the same php.ini:
extension=pdo.soextension=pdo_sqlite.so
extension=sqlite.so
extension=pdo_mysql.so
~ J
thanks
This solved my problems with PDO
Thanks a lot
good to hear!
That's exactly what I hoped would happen! Glad to hear others can find this useful.
INSTALL.txt missing PDO info
I checked the INSTALL.txt file that comes with Drupal 7 and I think there's a fail here (on Drupal's part). The PHP notes in the INSTALL.txt file point to a link for more info on what PHP extensions should be installed but I think PDO being a requirement should be text provided in install txt file for others to not fall into the same config trap you just did.
Chris Charlton, Author & Drupal Community Leader, Enterprise Level Consultant
I teach you how to build Drupal Themes http://tinyurl.com/theme-drupal and provide add-on software at http://xtnd.us
Suggested change for the INSTALL.txt for D7
When the errors show up, there's a link to the system requirements page which didn't help me, because it didn't show how to fix any settings related to the pdo requirements.
I took a stab at modifying the INSTALL.txt file for D7.
Under the heading, "
The most common steps you may need to perform are:" I added "c. Missing php.ini file." and changed the next letter tod.like this:< snip >
chmod go-w sites/default/settings.php
c. Missing php.ini file.
It's possible that the setting for register_globals is enabled. If you get
this error, it it likely the php.ini file is missing in the public_html
directory on your site.
To fix the register_globals error, create a php.ini file in the
public_html directory with the following line in it:
register_globals = Off
It's possible that fixing this error will result in a subsequent error
related to PHP extensions.
To fix the pdo (PHP Data Objects) errors, add the following four lines to
the php.ini file, to look like this:
register_globals = Off
extension=pdo.so
extension=pdo_sqlite.so
extension=sqlite.so
extension=pdo_mysql.so
d. Write permissions after install.
< snip >
Hope this helps. I don't know whether/how to escalate the suggested change.
~ J
Great work. To escalate this,
Great work. To escalate this, go to http://drupal.org/project/issues/drupal and click the "create new issue" link. Be sure to select "7.x-dev" for the version and "Documentation" for the component.
Thank You!
Thank for this. I searched for hours, and your solution worked. Others had a .dll extenstion and they didn't seem to work in the php.ini.
extension=pdo.so
extension=pdo_sqlite.so
extension=sqlite.so
extension=pdo_mysql.so
You legend!
Totally worked on Drupal 7. Thanks
What version of PHP
I believe this is a case of PHP 5.2 vs. 5.3...There should be some literature on D.O regarding problems with this but please tell us the server config if you can...Better yet if you can paste a link to the php_info or include a screenshot that would help us as well.
Created New Issue
New Issue for 7 Core
http://drupal.org/node/1073232
(I released the assignment from myself, now that someone's only interested in telling me what's wrong with my little edit to install.txt.)
apt-get install
For sqlite, try:
sudo apt-get -qy install sqlite3 php5-sqlite