PHP 會話已建立但傳回 NULL
P粉573809727
P粉573809727 2024-02-25 18:52:10
0
1
408

我認為這是 /tmp 上的權限問題,但我似乎找不到解決方案。

我正在使用PHP 建立一個註冊和登入頁面;我可以看到,當使用者登入時,會話資料被傳遞到/tmp 資料夾,但是當他們重定向到home/index 頁面時,會話資料傳回NULL 。

我使用以下內容來驗證正確的路徑是否具有權限:

<?php

    var_dump($_SESSION);
    if (!is_writable(session_save_path()))
    {
            echo 'Session path "'.session_save_path().'" is not writable for PHP!'; 
    }
    else
    {
        echo 'Session path "'.session_save_path().'" is writable for PHP!'; 
    }

?>

我最終得到:

NULL Session path "/var/lib/php/sessions" is writable for PHP!

檢查資料夾,我可以看到會話資料保存到 /tmp,因此它肯定是可寫入的。

所以我最好的猜測是 start_session() 有寫入 /tmp 的權限,但沒有讀取的權限?但這對我來說沒有任何意義。

檢查我得到的 var/lib/php/sessions 中的權限(範例):

drwx-wx-wt 2 root root 151552 Dec 22 05:09

將資料夾的權限變更為:

-rw-rw-rw-

造成任何安全或其他功能問題嗎?

P粉573809727
P粉573809727

全部回覆(1)
P粉665427988

我認為這會解決您的問題

然後

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板