答えて
codeigniterセッションとは何の関係もありません.4kbのデータは、クッキーが保持できる最大サイズです。
さらにデータを保持するには、データベースを使用します(http://codeigniter.com/user_guide/libraries/sessions.htmlの「データベースへのセッションデータの保存」を参照)。
「セッションデータをデータベースに保存する」の章では、CI_Sessionで検証データを保存する方法についてのみ説明しています。あなたの「本当の」データは常にクッキーに保存されるので、セッションのサイズは同じです:4kb 保存するにはhttp://codeigniter.com/wiki/DB_Session/またはhttp://codeigniter.com/wiki/OB_Session/を参照してくださいデータベース内のデータ –
私はこれを試したときに一般的なデータ –
セッションに大量のデータを保存しないでください。要求ごとにスクリプトのメモリにロードされます。
セッションIDを使用してセッションにデータを接続する代わりに、ファイルまたはデータベースを使用します。
はい、データベースを使用する必要があります。はい、4kbの制限は、10年前にNetscapeが選んだCookieサイズのブラウザ制限です。同じドメインのサーバー上のオブジェクトに対するすべてのリクエストヘッダーがこのCookieを送信するため、Cookieを小さくすることは一般的には良い方法です。
また、CodeIgniterのデータベースセッションテーブルに関するヒントは、セッションをディスクではなくRAMに保存するようにタイプをMEMORYに設定すると、サイトが高速になります(サイトにアクセスするとディスクが少なくなります)。サーバーが再起動したときにセッションデータが失われますが、再起動が保留されていると、そのような情報は通常はあまり役に立ちません。 CodeIgniterのMySQLのテーブルを作成するための
SQL:
CREATE TABLE IF NOT EXISTS `ci_sessions` (
session_id varchar(40) DEFAULT '0' NOT NULL,
ip_address varchar(16) DEFAULT '0' NOT NULL,
user_agent varchar(50) NOT NULL,
last_activity int(10) unsigned DEFAULT 0 NOT NULL,
user_data text NOT NULL,
PRIMARY KEY (session_id)
);
(アプリケーション/設定/ config.phpの中)
CodeIgniterのPHPオプション:
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_encrypt_cookie'] = FALSE;
$config['sess_use_database'] = TRUE;
$config['sess_table_name'] = 'ci_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update'] = 300;
それはさえに良い習慣ではありません@allセッションはこれに役立つかもしれませんが、一般的なデータについてはもう一度&にヒットしてください。この目的でPHPネイティブセッションを使用することをお勧めします。ここでは、CIでPHPネイティブセッションを使用する方法を参照してください。
のためにもう一度dbを打つのは良くありませんが、このエラーが発生します:エラーが発生しました 存在しないクラス:セッション – dapidmini
- 1. CodeIgniterのRESTServerセッション
- 2. PHP Mysql Codeigniterのセッション変数のサイズが増加しました
- 3. CodeIgniterセッション
- 4. CodeIgniterセッション
- 5. Subdomain overwiting CodeIgniterセッション
- 6. codeigniterセッションとクッキー
- 7. codeigniterセッション:php
- 8. CodeIgniter 3 + Docker - セッション
- 9. Codeigniterのセッションの仕組み
- 10. CodeIgniterの - 画面サイズ
- 11. Codeigniterセッションの重複問題
- 12. CodeIgniterのセッションは操作
- 13. CodeIgniterのカールcronジョブとセッション
- 14. Codeigniterデータベースクラスのセッションを使用
- 15. CodeIgniterセッションとFlash Uploaders
- 16. Codeigniterイメージのサイズ変更?
- 17. CodeIgniterのセッションの複数のエントリ
- 18. Internet ExplorerのCodeigniterセッションの問題
- 19. Codeigniterの複数のクエリー結果は、セッション
- 20. CodeIgniterでのセッションの置換を防ぐ
- 21. PHPセッションの最大サイズ
- 22. オンライン、CodeIgniter、およびセッション
- 23. Codeigniterのセッションを制御する方法
- 24. Codeigniter - some_nameのセッションにアクセスする
- 25. chrome codeigniter redis clearingセッションの問題
- 26. Codeigniter:セッションにアクセスするためのベストプラクティス
- 27. CodeIgniter + QuickAuth + Oneユーザー、1セッションのみ
- 28. 複数セッション(管理者とユーザー)CodeIgniterの
- 29. Codeigniter:セッションの終了後にホームページにリダイレクト
- 30. Codeigniterセッション変数、フォーム、データベース値の更新
CodeIgniterはセッション情報を保存するためにCookieを使用します。このような大量のデータを格納する場合は、データベースを使用して情報を格納することを検討する必要があります。 – Malachi
ありがとうございました セッションに一部のデータを保存しないようにプログラムを変更しました – Pedro