新しいホストプロバイダーでzend-frameworkプロジェクトをホストしようとしていました。すべてをアップロードしてデータベース接続を構成した後、Internal Server Error
メッセージが表示されました。私のサービスプロバイダーは、彼らがzend-frameworkをインストールしないと言ったが、フレームワークをライブラリとしてプロジェクトに統合しました。
html
ファイルをアップロードするサーバーをテストしたとき、正常に動作します。
Apacheサーバーにアクセスする特権がないので、どうすれば修正できますか?
エラーログ:
#0 /home/myweb/public_html/library/Zend/Db/Adapter/Pdo/Mysql.php(96): Zend_Db_Adapter_Pdo_Abstract->_connect()
#1 /home/myweb/public_html/library/Zend/Db/Adapter/Abstract.php(448): Zend_Db_Adapter_Pdo_Mysql->_connect()
#2 /home/myweb/public_html/library/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('SET NAMES 'utf8...', Array)
#3 /home/myweb/public_html/application/Bootstrap.php(144): Zend_Db_Adapter_Pdo_Abstract->query('SET NAMES 'utf8...')
#4 /home/myweb/public_html/library/Zend/Application/Bootstrap/BootstrapAbstract.php(666): Bootstrap->_initDb()
#5 /home/myweb/public_html/library/Zend/Application/Bootstrap/BootstrapAbstract.php(619): Zend_Application_Bootstrap_BootstrapAbstract->_executeResource('db')
#6 /home/myweb/public_html/library/Zend/Application/Bootstrap/BootstrapAbstr in /home/myweb/public_html/library/Zend/Db/Adapter/Pdo/Abstract.php on line 112
[11-Jul-2011 07:35:51] PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so' - /usr/local/lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so: undefined symbol: php_pdo_unregister_driver in Unknown on line 0
[11-Jul-2011 07:35:51] PHP Fatal error: Uncaught exception 'Zend_Db_Adapter_Exception' with message 'The mysql driver is not currently installed' in /home/myweb/public_html/library/Zend/Db/Adapter/Pdo/Abstract.php:112
Stack trace:
エラーログは、ZendフレームワークがMySQLサーバーに接続するために必要なPDO MySQLドライバーを見つけることができないことを示しています。これにはいくつかの理由が考えられます。
サーバーが古いバージョンのPHPを実行している可能性があります。 (PDOクラスはPHP 5.1以降にのみ含まれています。)次のコードを含む「info.php」というファイルを作成し、ブラウザーでそのファイルを開いて、実行しているバージョンを確認します。
<?php phpinfo(); ?>
PHPバージョンを確認したらすぐにこのファイルを削除して、他のユーザーがアクセスできないようにします。 PHP 5.1を使用していない場合は、ホスティング会社にインストールを依頼してください。 PHP 5.1を使用している場合は、読み進めてください。
エラーメッセージの私の読書から:
Unable to load dynamic library '/usr/local/lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so'
サーバーにいくつかの拡張機能がないようです。インストールできるVirtual Private Serverに追加料金を支払うことをお勧めします。