2010-11-08 5 views
2

Je suis confronté à une erreur de suivi lorsque j'accède au module/contrôleur/action dans mon application zend sur l'hébergement de godaddy.Comment éditer php.ini sur l'hébergement de godaddy IIS?

'The PDO extension is required for this adapter but the extension is not loaded' 

J'ai donc trouvé l'article suivant pour résoudre le problème.

http://mnshankar.wordpress.com/2008/10/12/the-pdo-extension-is-required-for-this-adapter-but-the-extension-is-not-loaded/

Alors maintenant, je veux modifier fichier php.ini pour résoudre le problème sur GoDaddy hébergement, mais je ne trouve pas un moyen de l'obtenir et de le modifier. Est-ce que quelqu'un peut me dire les étapes pour éditer le fichier php.ini ou j'ai créé mon propre projet php.ini. Si je dois créer le fichier php.ini de mon propre projet, alors où dois-je le placer et quel contenu doit-il contenir?

Répondre

3

Étape 1 Placez un phpinfo dans votre dossier racine web pour obtenir des informations sur le fichier de configuration qui est en cours de chargement pour php, et d'autres détails de la configuration de PHP sur votre serveur.

<?php 
    phpinfo(); 
?> 

Ce que nous devons faire

Vous avez essentiellement pour obtenir le pdo extensions loaded and enabled. Les étapes pour lesquelles « habituellement » sont les suivantes:

  1. php.ini Ouvrir
  2. décommenter la ligne extension = php_pdo.dll
  3. décommentez la ligne (en fonction de la base de données que vous utilisez) extension = php_pdo_mysql.dll
  4. Redémarrez votre serveur web et recharger la page en question

Étape 2 Pour GoDaddy, nous n'avons pas toujours les droits sur les comptes d'hébergement partagé pour modifier php.ini ou installer et charger des modules manquants . L'alternative est d'avoir notre propre php.ini qui remplace le php.ini par défaut. Pour les versions sous php 5, ce fichier s'appelle php.ini et pour php 5.x il doit être php5.ini. Pour savoir où placer ce fichier php5.ini, placez un fichier php avec le code suivant dans votre racine web.

<?php echo dirname(__FILE__); ?> 

Maintenant, placez votre php5.ini dans le dossier racine web et reset the application pool pour que ces modifications prennent effet.

Si vous obtenez l'extension de type non chargé d'erreurs, puis suivez les étapes suivantes

Étape 3 Nous devons place our extensions dans le dossier racine web que nous avons compris dans Étape 2, en particulier les parties où il est suggéré que la «ligne à ajouter dans le fichier php.ini doit spécifier le chemin complet de l'extension, par exemple:

extension=D:\Hosting\2443908\html\extensions\php_pdo.dll 
extension=D:\Hosting\2443908\html\extensions\php_pdo_mysql.dll 

Juste au cas où vous n'êtes toujours pas autorisé à utiliser/dl charge pdo ls, vous pouvez également essayer de vous connecter via Zend mysqli adapter.

+0

Je suis confus après avoir visité tous les liens ci-dessus. Pouvez-vous s'il vous plaît fournir plus de détails. – Awan

+0

@Awan: J'ai maintenant élaboré ma réponse, pour vous éviter de visiter les liens. –

+0

Je télécharge 'php_mysqli.dll' et j'ai utilisé' extension = D: \ Hosting \ 2443908 \ html \ extensions \ php_mysqli.dll' dans ** php5.ini ** dans le dossier public zend et la base de données est connectée. – Awan

3

Votre fournisseur d'hébergement doit déjà avoir installé le module. Aucun hébergement Web partagé ne vous permettra d'éditer le fichier php.ini. Vous pouvez essayer d'utiliser la fonction dl dans votre code mais je ne pense vraiment pas que vous réussirez, car si le module n'est pas déjà chargé, il n'est probablement pas installé sur le serveur, donc vous ne pouvez pas le charger.

La solution consiste à demander à votre hébergeur d'installer le module ou de passer à un autre hôte s'il refuse.

1

this est le premier succès sur google recherchant "godaddy hosting php.ini" - sonnent comme vous juste devez créer un php.ini, le télécharger et wait some time jusqu'à ce qu'il soit reconnu.

3

Est-il possible que l'espace Web que vous utilisez soit encore sur PHP 4 pour une raison quelconque?

Parce que dans PHP 5, PDO est activated by default. Je ne peux pas voir un fournisseur d'hébergement comme Godaddy le désactivant.

Dans ce cas, vous devrez passer à PHP 5 - peut-être que le paquet Godaddy est dans une sorte de mode de compatibilité. Zend Framework ne fonctionnera pas du tout en PHP 4.

+0

Il y a ** PHP 5.x ** et ** IIS 7.0 ** cours d'exécution. – Awan

+0

@ Ah ah, ça l'explique: Il doit être décommenté dans PHP.ini sur Windows. Ensuite, vous avez besoin d'un support par e-mail et demandez-leur de le faire. –

+0

@Pekka: oui, je dois modifier le fichier ** php.ini ** mais je n'ai pas trouvé de solution. Quelqu'un m'a demandé de créer mon propre fichier php5.ini, y écrire des instructions d'extension pdo et de le télécharger dans mon répertoire racine, mais cela ne fonctionne pas. Peut-être qu'il me manque quelque chose. Le répertoire racine est le dossier principal du projet ou le dossier de l'application ou le dossier public est l'application zend? Les poster à propos de ce problème sera en retard pour moi. Merci – Awan