亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

session_start() 導致錯誤:沒有這樣的文件或目錄

session_start() 導致錯誤:沒有這樣的文件或目錄

PHP
元芳怎么了 2021-12-03 14:32:01
我有以下 PHP 代碼:include './globallyUsedFunctions/connectToDatabase.php';include './globallyUsedFunctions/hashInput.php';session_start();出于某種原因,它會導致此錯誤:<br /><b>Warning</b>:  session_start(): open(\xampp\tmp\sess_4p70knkr6lb7r9ha0pitktl3fe, O_RDWR) failed: No such file or directory (2) in <b>D:\foundationtests\src\assets\php\login.php</b> on line <b>2</b><br /><br /><b>Warning</b>:  session_start(): Failed to read session data: files (path: \xampp\tmp) in <b>D:\foundationtests\src\assets\php\login.php</b> on line <b>2</b><br />現在我認為原因在于代碼之外,所以這里有一些關于我的系統的信息:我有最新版本的免安裝 XAMPP,我在其中運行 apache 和 mariaDB。這是在 Windows 10 機器上運行的,在沒有管理員權限的用戶帳戶上運行(這就是我選擇 XAMPP 免安裝版本的原因)。該網站也在基于 webpack4、gulp 和 babel7 的 ZURB 基礎框架(ZURB 模板 6.4)中運行。編輯:我已經嘗試過的替代方案:由“代碼構建者”建議(見答案)session_start();require_once $_SERVER['DOCUMENT_ROOT'].'/globallyUsedFunctions/connectToDatabase.php';require_once $_SERVER['DOCUMENT_ROOT'].'/globallyUsedFunctions/hashInput.php';結果 =><br /><b>Warning</b>:  session_start(): open(\xampp\tmp\sess_14rr40ahtg7rbgb20fvqocet83, O_RDWR) failed: No such file or directory (2) in <b>D:\foundationtests\src\assets\php\login.php</b> on line <b>2</b><br /><br /><b>Warning</b>:  session_start(): Failed to read session data: files (path: \xampp\tmp) in <b>D:\foundationtests\src\assets\php\login.php</b> on line <b>2</b><br />
查看完整描述

2 回答

?
慕姐4208626

TA貢獻1852條經驗 獲得超7個贊

<b>Warning</b>:  session_start(): open(\xampp\tmp\sess_4p70knkr6lb7r9ha0pitktl3fe, O_RDWR) failed: No such file or directory (2) in <b>D:\foundationtests\src\assets\php\login.php</b> on line <b>2</b><br />

session_start()嘗試將其數據寫入的路徑沒有驅動器號。由于您正在從 運行代碼D:\foundationtests\src\assets\php\login.php,因此假定它D:也在 。你說實際路徑應該在E:. 問題就在這里。

我不熟悉第三方包(有時它們引起的問題似乎比解決的問題還多)但它肯定會在php.ini某個地方有一個包含不完整session.save_path指令的文件。找到它并修復它。

除此之外,更好的長期解決方案是為每個應用程序啟用自定義會話目錄。機制大致相同:

  1. D:\foundationtests\src在 DOCUMENT_ROOT 之外的代碼庫中創建一個目錄(我猜是在某個地方)。

  2. session.save_path調用前配置session_start()。

這具有提供對會話超時的完全控制的額外好處。


查看完整回答
反對 回復 2021-12-03
?
幕布斯7119047

TA貢獻1794條經驗 獲得超8個贊

session_start(); 應該始終是項目中的第一行代碼。

使用相對路徑會給你帶來麻煩。嘗試使用 $_SERVER['DOCUMENT_ROOT'] 的絕對路徑,然后指定文件的位置。

require_once $_SERVER['DOCUMENT_ROOT']."/connectToDatabase.php";


查看完整回答
反對 回復 2021-12-03
  • 2 回答
  • 0 關注
  • 485 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號