4

この Facebook アプリは、ion_auth を使用して作成しました。一部のブラウザーでは、アプリを承認すると、サーバーにユーザーがログインしません。

ログファイルを確認したところ、これがわかりました

ERROR - 2013-06-10 00:00:01 --> Severity: Warning  --> include_once(application/core/MY_Ion_auth.php): failed to open stream: No such file or directory /var/www/html/application/config/production/config.php 378
ERROR - 2013-06-10 00:00:01 --> Severity: Warning  --> include_once(): Failed opening 'application/core/MY_Ion_auth.php' for inclusion (include_path='.:/usr/share/pear:/usr/share/php') /var/www/html/application/config/production/config.php 378

config.php の 378 行目は次のようになります。

function __autoload($class)
{
    if (strpos($class, 'CI_') !== 0) {
        @include_once(APPPATH . 'core/' . $class . EXT);
    }
}

ion_auth と go2 はどちらも自動ロードされているライブラリであり、実際にはライブラリ フォルダーにあります。

何か案は?

4

2 に答える 2

0

controller のコンストラクターに関連ライブラリを含めることをお勧めします。例えば:

class MyOwnAuth extends CI_Controller {

    /*
     * CONSTRUCTOR
     * Load what you need here.
     */
    function __construct()
    {
        parent::__construct();
        $this->load->library('form_validation');
        $this->load->helper('url');

        // Load MongoDB library instead of native db driver if required
        $this->config->item('use_mongodb', 'ion_auth') ?
        $this->load->library('mongo_db') :

        $this->load->database();

        $this->form_validation->set_error_delimiters($this->config->item('error_start_delimiter', 'ion_auth'), $this->config->item('error_end_delimiter', 'ion_auth'));

        $this->lang->load('auth');
        $this->load->helper('language');
    }
}
/* End of class MyOwnAuth*/

このようにして、コントローラーの実行に不可欠なライブラリのみをロードします。コードを軽量に保ちます:)

于 2013-06-10T19:38:11.283 に答える