2017-01-05 6 views
0

Synology NASで自分のownCloudインスタンスを実行する際に問題が発生しました。私は次のログエラーに遭遇する:ownCloudサーバー:DBA_DEFAULT PHPエラー

PHP Startup: No such handler: DBA_DEFAULT at Unknown#0

...これは、データベースへの接続に関するものです。 データベースがownCloudによって呼び出せ、接続されているすべてのクライアントが動作し、Webインターフェイスが動作するなど、非常に混乱します。このメッセージだけが残っています。

私の構成の詳細:DSM 6.0.2-8451アップデートと

  • のSynology DS216j 7
  • PHP 5.6.28
  • MariaDB 5.5.53
  • ownCloud 9.1.3

このエラーに関する情報はまったく見つかりません...

答えて

0

私はこのメッセージを最近Synology NASで見てきました。これが私が見つけたものです。私のNASには複数のPHPがインストールされていますが、このエラーはデフォルトインストールから発生していると思います。

[email protected]:~# /bin/php --ri dba 
Extension 'dba' not present. 

しかし

[email protected]:~# /usr/local/bin/php56 --ri dba 

dba 

DBA support => enabled 
Supported handlers => gdbm cdb cdb_make db4 inifile flatfile 

Directive => Local Value => Master Value 
dba.default_handler => flatfile => flatfile 

私の代替のPHPを使用したので、一つの解決策は、アプリケーションが正しいPHPのバージョンを呼び出していることを確認することです。このためには、Synology Web StationからHTTPサーバとPHPバージョンを管理することができます。

このメッセージはレベルがE_WARNINGであることに気付きましたが、無視することができます(バークレーデータベースが必要な場合を除きます)。私はownCloud同様の機能を有するを推測している私のアプリケーション

function shutdownHandler() 
{ 
    try { 
     $error = error_get_last(); 
     if ($error !== NULL && $error["type"] == E_ERROR) { 
      $backtrace = "(E_ERROR) " . $error["message"]; 

      $trace = debug_backtrace(); 
      foreach($trace as $item) { 
       $backtrace .= "\n\t" . (isset($item['file']) ? $item['file'] : '<unknown file>') 
        . ' ' . (isset($item['line']) ? $item['line'] : '<unknown line>') 
        . ' calling ' . (isset($item['function']) ? $item['function'] : '<unknown function>') . '()'; 
      } 

      \Logger::LogError($backtrace, $error["file"], $error["line"]); 
     } 
    } 
    catch (Exception $e) { 
     print get_class($e)." thrown within the shutdown handler. Message: ".$e->getMessage()." on line ".$e->getLine(); 
    } 
} 

# Registering shutdown function 
register_shutdown_function('shutdownHandler'); 

にこのコードを追加しましたが、おそらくあなたがこのメッセージを見ている理由である、すべてのエラーメッセージをログに記録されます。

+0

このヒントをありがとう!私は前にPHPのバージョンをWeb Stationで切り替えましたが、メッセージは消えませんでした。最後に、dbaハンドラ(DBA_DEFAULT)が割り当てられていないことがわかりました。しかし、Web Stationの "PHP Settings" - >使用するPHPのバージョンを選択 - > "Advanced Settings"(ドイツ語版を使用します) - > "Advanced"を選択してdbaを見つけました。「DBA_DEFAULT」の代わりに「handler_default」エントリと「flatfile」を挿入しました。エラーは24時間以降発生しませんでした...投稿を編集して解決策として追加したくありません。 。: - / – deusexmac

0

これは私のDS114 DSM 6.0.2-8451 Update 7でも、2017年1月6日のApache 2.2のアップグレード後に発生します。アップグレードする前にすべてうまくいきました。私は

XSendFilePathの/ var /サービス/ウェブ/ VARから/volume1/@appstore/Apache2.2/usr/local/etc/apache22/conf/extra/mod_xsendfile.conf

を変更した

/サービス/家庭

XSendFilePath /音量の/ owncloud

、今それが再び動作する

関連する問題