ThinkPHP: session_save_path與systemd衝突錯誤!

thinkphp v3.2.3
在文件./thinkphp_3.2.3_full/ThinkPHP/Common/functions.php中,原來的代碼:php

  1. if(isset($name['path']))            session_save_path($name['path']);thinkphp

應當修改一下:
  1. if(isset($name['path'])) {session

  2.             if(!file_exists($name['path'])) {php-fpm

  3.                 mkdir($name['path'], 0777, true);spa

  4.             }3d

  5.             session_save_path($name['path']);code

  6.         }orm

系統使用了systemd,在訪問時出現會話文件找不到的錯誤!!!
修改的目的是讓php-fpm自動建立目錄,其建立的目錄與要建立的目的目錄並不一致,如自定義會話存儲目錄:
  1. session_save_path('/tmp/session');it

系統實際建立的目錄:
  1. /tmp/systemd-private-01c98cd0e1f343d0a2baa1783179df8b-php-fpm.service-zMJDw0/tmp/sessionio

或者修改systemd配置,將PrivateTmp=true改成PrivateTmp=false,這樣自定義目錄和實際建立的目錄就一致了,能夠解決此類問題。
相關文章
相關標籤/搜索