ホームページ  >  記事  >  バックエンド開発  >  ECSHOPのバックグラウンドログインタイムアウトとセッション有効期限の解決策_PHPチュートリアル

ECSHOPのバックグラウンドログインタイムアウトとセッション有効期限の解決策_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:42:591294ブラウズ

多くのユーザーは、ecshop を閉じると頻繁にタイムアウトしてしまうことがあります。この問題には多くの解決策があります。具体的な方法は次のとおりです。

includecls_session.php を変更します。

コードは次のとおりですコードをコピー
var $max_life_time = 1440;

// SESSION 有効期限、このコード内の秒単位の数値。この数値の単位は秒です。フォアグラウンド ログインとバックグラウンド ログインは、ここで設定した時間です。

2 バックグラウンドでの製品の編集は時間がかかりタイムアウトすることがよくありますが、ログイン時に「今回はログイン情報を保存してください」を選択してタイムアウトを回避するか、admintemplateslogin.html を直接変更してページが選択されるようにすることができます。これはデフォルトです!新しいバージョンではセキュリティが強化されました。バックグラウンド操作をしないと再ログインに5分近くかかります。3分しかかからないため、入力プロセス中にタイムアウトすることがよくあります。タイムアウト時間を増やす必要があります。

変更方法は以下の通りです。

includes/init.php

api/init.php
admin/includes/init.php
wap/includes/init.php

上記のファイルで、次のコードを見つけます

コードは次のとおりですコードをコピー
@ini_set(’session.cache_expire’, 180);//単位は秒

もちろん上記の方法以外にもphp設定ファイルを修正して動作させることも可能です

PHP のセッションのトピックの続きですが、PHP では、セッションのライフサイクルは主に session.gc_maxlifetime を設定することによって設定されます。例:

コードは次のとおりですコードをコピー
ini_set('session.gc_maxlifetime', 3600); // 時間を設定します
ini_get('session.gc_maxlifetime');//iniに設定されている値を取得
?>

以下は他の人がパッケージ化した機能ですが、私はテストしていません。参考用です。

コードは次のとおりですコードをコピー
関数 start_session($expire = 0)
{
If ($expire == 0) {
$expire = ini_get('session.gc_maxlifetime');
} その他 {
ini_set('session.gc_maxlifetime', $expire);
}

If (空($_COOKIE['PHPSESSID'])) {
Session_set_cookie_params($expire);
Session_start();
} その他 {
Session_start();
setcookie('PHPSESSID', session_id(), time() + $expire);
}
}
?>

使用方法:

start_session(600) を追加します。 // 600 秒後に期限切れになります。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/633206.html技術記事多くのユーザーは、ecshop がオフになると頻繁にタイムアウトになることに気づくかもしれません。この問題を解決するには、ecsho で直接変更することができます。具体的な方法は次のとおりです。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。