Hướng dẫn how does php store session data? - php lưu trữ dữ liệu phiên như thế nào?

Các biến $_SESSION có được lưu trữ trên máy khách hoặc máy chủ không?

LF00

25.6K27 Huy hiệu vàng142 Huy hiệu bạc271 Huy hiệu Đồng27 gold badges142 silver badges271 bronze badges

hỏi ngày 18 tháng 1 năm 2009 lúc 4:10Jan 18, 2009 at 4:10

Steve Gattusosteve GattusoSteve Gattuso

7.35410 Huy hiệu vàng44 Huy hiệu bạc55 Huy hiệu Đồng10 gold badges44 silver badges55 bronze badges

1

Vị trí của bộ lưu trữ biến $_SESSION được xác định bởi cấu hình session.save_path của PHP. Thông thường đây là /tmp trên hệ thống Linux/Unix. Sử dụng chức năng phpinfo[] để xem các cài đặt cụ thể của bạn nếu không chắc chắn 100% bằng cách tạo một tệp có nội dung này trong DocumentRoot của tên miền của bạn:


Dưới đây là liên kết đến tài liệu PHP trên cài đặt cấu hình này:

//php.net/manual/en/session.configuration.php#ini.session.save-path

Đã trả lời ngày 18 tháng 1 năm 2009 lúc 4:32Jan 18, 2009 at 4:32

rjamestaylorrjamestaylorrjamestaylor

2.9721 Huy hiệu vàng18 Huy hiệu bạc10 Huy hiệu đồng1 gold badge18 silver badges10 bronze badges

Như đã đề cập, các nội dung được lưu trữ tại máy chủ. Tuy nhiên, phiên được xác định bởi ID phiên, được lưu trữ tại máy khách và gửi theo từng yêu cầu. Thông thường ID phiên được lưu trữ trong cookie, nhưng nó cũng có thể được thêm vào URL. [Đó là tham số truy vấn ____1010 mà bạn có một số lần xem]

Đã trả lời ngày 18 tháng 1 năm 2009 lúc 13:08Jan 18, 2009 at 13:08

Troelskntroelskntroelskn

Huy hiệu vàng 113K2626 gold badges132 silver badges154 bronze badges

4

Chúng thường được lưu trữ trên máy chủ. Nơi chúng được lưu trữ là tùy thuộc vào bạn với tư cách là nhà phát triển. Bạn có thể sử dụng biến cấu hình

/var/lib/php/sessions
1 và
/var/lib/php/sessions
2 để kiểm soát cách các phiên được lưu trên máy chủ. Phương thức lưu mặc định là lưu các phiên vào các tệp. Nơi họ được lưu được kiểm soát bởi biến session.save_path.

Đã trả lời ngày 18 tháng 1 năm 2009 lúc 4:34Jan 18, 2009 at 4:34

Rob Kennedyrob KennedyRob Kennedy

160K21 Huy hiệu vàng273 Huy hiệu bạc461 Huy hiệu Đồng21 gold badges273 silver badges461 bronze badges

Một bổ sung: Cần lưu ý rằng, trong trường hợp "/TMP" là thư mục lưu trữ dữ liệu phiên [dường như là giá trị mặc định], các phiên sẽ không tồn tại sau khi khởi động lại máy chủ web đó, là "/TMP "Thường được thanh trừng trong quá trình khởi động lại. Khái niệm về sự kiên trì của khách hàng và rơi vào sự tồn tại của bộ lưu trữ trên máy chủ - có thể thất bại nếu thư mục "/TMP" được sử dụng cho dữ liệu phiên.

Đã trả lời ngày 8 tháng 8 năm 2012 lúc 17:11Aug 8, 2012 at 17:11

Trên Debian [đây không phải là trường hợp của hầu hết các bản phân phối Linux?], Nó được lưu trong/var/lib/php5/. Như đã đề cập ở trên, nó được cấu hình trong php.ini của bạn.

Đã trả lời ngày 18 tháng 1 năm 2009 lúc 21:23Jan 18, 2009 at 21:23

HanshansHans

1.2429 huy hiệu bạc7 huy hiệu đồng9 silver badges7 bronze badges

Tôi đang sử dụng Ubuntu và các phiên của tôi được lưu trữ trong/var/lib/php5.

Đã trả lời ngày 17 tháng 7 năm 2013 lúc 9:15Jul 17, 2013 at 9:15

1

Như ông Taylor đã chỉ ra điều này thường được đặt trong php.ini. Thông thường chúng được lưu trữ dưới dạng tệp trong một thư mục cụ thể.

Đã trả lời ngày 18 tháng 1 năm 2009 lúc 4:14Jan 18, 2009 at 4:14

Brian Fisherbrian FisherBrian Fisher

Phù hiệu vàng 23K1515 gold badges76 silver badges82 bronze badges

Đối với Ubuntu 16.10 là các phiên lưu trong/var/lib/php/session/...

Đã trả lời ngày 3 tháng 3 năm 2017 lúc 9:27Mar 3, 2017 at 9:27

Lukáš Křížlukáš KřížLukáš Kříž

6107 Huy hiệu bạc5 Huy hiệu Đồng7 silver badges5 bronze badges

Trong các phiên máy Ubuntu của tôi được lưu trữ tại

/var/lib/php/sessions

Và bạn phải

/var/lib/php/sessions
4 trong thư mục này chỉ
/var/lib/php/sessions
5 nó sẽ ném

LS: Không thể mở thư mục '.': Quyền bị từ chối

Và trên các phiên Php Wamp Wamp Server của tôi được lưu trữ trong

C:\wamp64\tmp

Và nếu bạn cài đặt PHP độc lập trên Windows thì không có giá trị nào được đặt theo mặc định

session.save_path => no value => no value

Đã trả lời ngày 19 tháng 3 năm 2020 lúc 11:43Mar 19, 2020 at 11:43

Làm thế nào nó hoạt động? Làm thế nào để nó biết nó là tôi?

Hầu hết các phiên đặt khóa người dùng [được gọi là sessionID] trên máy tính của người dùng trông giống như thế này: 765487CF34ERT8DEDE5A562E4F3A7E12. Sau đó, khi một phiên được mở trên một trang khác, nó sẽ quét máy tính cho một khóa người dùng và chạy đến máy chủ để lấy các biến của bạn.

Nếu bạn nhầm bộ đệm, thì khóa người dùng của bạn cũng sẽ bị xóa. Bạn sẽ không thể lấy các biến của mình từ máy chủ nữa vì bạn không biết ID của mình.

Đã trả lời ngày 15 tháng 7 năm 2017 lúc 7:45Jul 15, 2017 at 7:45

Emeka Obianomemeka ObianomEmeka Obianom

1.7163 huy hiệu vàng16 Huy hiệu bạc36 Huy hiệu đồng3 gold badges16 silver badges36 bronze badges

Phiên PHP có thể truy cập thông qua biến toàn cầu $_SESSION được lưu trữ trên máy chủ dưới dạng tệp theo mặc định. Ngoài ra, tham chiếu đến nó [được gọi là

/var/lib/php/sessions
7] được lưu trữ ở phía máy khách dưới dạng cookie trình duyệt. Nếu một trong hai điều này bị xóa, thì phiên sẽ không hợp lệ.server as files by default. Also the reference to it [called
/var/lib/php/sessions
7] is stored on client side as browser cookies. If either of this is deleted, then the session becomes invalid.

Bạn có thể thay đổi lưu trữ thành cơ sở dữ liệu/redis/memcache, vv bằng cách sử dụng trình xử lý phiên tùy chỉnh PHP. Ngoài ra, có các tiện ích mở rộng có sẵn cho các bộ lưu trữ khác nhau như SQLite, Memcache và Memcached.

Đã trả lời ngày 7 tháng 1 lúc 8:29Jan 7 at 8:29

Dipu Rajdipu RajDipu Raj

1.6943 huy hiệu vàng28 Huy hiệu bạc35 Huy hiệu đồng3 gold badges28 silver badges35 bronze badges

Nhiều câu trả lời trên là mờ đục. Theo tôi, tác giả của câu hỏi này chỉ đơn giản là muốn biết các biến phiên được lưu trữ theo mặc định. Theo điều này: //canvas.seattlecentral.edu/courses/937693/pages/10-advanced-phph-sessions Chúng chỉ được lưu trữ trên máy chủ theo mặc định. Hy vọng, những người khác sẽ tìm thấy sự đóng góp này có ý nghĩa.stored on the server by default. Hopefully, others will find this contribution meaningful.

Đã trả lời ngày 15 tháng 10 năm 2019 lúc 12:42Oct 15, 2019 at 12:42

Evan Gertisevan GertisEvan Gertis

1.5151 Huy hiệu vàng17 Huy hiệu bạc42 Huy hiệu đồng1 gold badge17 silver badges42 bronze badges

Dữ liệu phiên được lưu trữ như thế nào?

Một phiên là một biến toàn cầu được lưu trữ trên máy chủ. Mỗi phiên được gán một ID duy nhất được sử dụng để truy xuất các giá trị được lưu trữ. Bất cứ khi nào một phiên được tạo, cookie chứa ID phiên duy nhất được lưu trữ trên máy tính của người dùng và được trả về mọi yêu cầu cho máy chủ.on the server. Each session is assigned a unique id which is used to retrieve stored values. Whenever a session is created, a cookie containing the unique session id is stored on the user's computer and returned with every request to the server.

ID phiên của Php Store ở đâu?

PHP cho phép chúng tôi theo dõi từng khách truy cập thông qua ID phiên duy nhất có thể được sử dụng để tương quan dữ liệu giữa các kết nối.ID này là một chuỗi ngẫu nhiên được gửi đến người dùng khi một phiên được tạo và được lưu trữ trong trình duyệt của người dùng trong cookie [theo mặc định có tên là PHPSessID].within the user's browser in a cookie [by default called PHPSESSID].

Phiên Php có được lưu trữ trên máy chủ không?

Phiên PHP có thể truy cập thông qua biến toàn cầu $ _Session được lưu trữ trên máy chủ dưới dạng các tệp theo mặc định.Ngoài ra, tham chiếu đến nó [được gọi là session_id] được lưu trữ ở phía máy khách dưới dạng cookie trình duyệt.. Also the reference to it [called session_id ] is stored on client side as browser cookies.

Các phiên PHP có được lưu trữ trong cookie không?

Trên thực tế, PHP lưu trữ phiên trong cookie - một cookie duy nhất, thường được gọi là phpsessid.Điều này tương ứng với một tệp [tên tệp là giá trị của cookie phpsessid] trên máy chủ là một tập hợp các cặp khóa/giá trị, chẳng hạn như các cặp bạn phác thảo ở trên.php does store the session in a cookie - a single cookie, usually called PHPSESSID . This corresponds to a file [the filename of which is the value of the PHPSESSID cookie] on the server which is a set of key/value pairs, such as those you outline above.

Bài Viết Liên Quan

Chủ Đề