Symptoms
- 
Domain with WHMCS shows error: The PHP session save path /var/lib/php/session is not writable. Please investigate the session.save_path PHP setting or contact your system administrator. 
 Warning: session_start(): open(C:WindowsTempsess_udfqa0si9tsg9i89dhene7ms78, O_RDWR) failed: Permission denied (13) in C:inetpubvhostsexample.comincludesconnect.php on line 2 
- 
Permissions for the folder mentioned in the error are correct: # ls -la /var/lib/php/ 
 ...
 drwx-wx-wt 2 root root 4096 Nov 15 23:36 session
 C:> UsersAdministrator>icacls C:WindowsTemp 
 C:WindowsTemp NT AUTHORITYNETWORK SERVICE:(CI)(RX,D,WD,AD)
 HOSTNAMEPP_WPG:(CI)(RX)
 HOSTNAMEpsaserv:(CI)(RX)
 HOSTNAMEpsacln:(CI)(RX)
 HOSTNAMEpsaadm:(CI)(RX)
 HOSTNAMEpsaadm:(OI)(IO)(R)
 BUILTINUsers:(CI)(S,WD,AD,X)
 BUILTINIIS_IUSRS:(OI)(CI)(S,RD)
 CREATOR OWNER:(OI)(CI)(IO)(F)
 NT AUTHORITYSYSTEM:(OI)(CI)(F)
 BUILTINAdministrators:(OI)(CI)(F)
Cause
Subscription system user directory for sessions is not created or it is not set in the session.save_path PHP settings.
Resolution
Note: in case there is no WHMCS installed on the same server, refer to the following article: Website hosted in Plesk displayed incorrectly or showing the PHP warning: Failed to read session data: files
It is required to create a special directory for the PHP sessions. It is possible to do it via SSH (for Linux) or via Plesk UI (for both Linux and Windows).
Using Plesk Interface
- 
Open File Manager under Domains > example.com. 
- 
Click New and choose Create directory. 
- 
Specify some name for the folder in this case we call it phpsessions. 
- 
Go to the PHP-Settings under Domains > example.com. 
- 
Change the setting session.save_path to the total path of a created folder: /var/www/vhosts/example.com/phpsessions 
 C:inetpubvhostsexample.comhttpdocsphpsessions 
Using SSH
- 
Connect to the server using SSH; 
- 
Execute the following commands, instead of example, insert subscription system user name: # mkdir -p /home/example/whmcsdata/sessions 
 # chmod 1750 /h /home/example/whmcsdata/sessions
 # chown example:psacln /home/example/whmcsdata/sessions
- 
Log into Plesk; 
- 
Navigate to Domains > example.com > PHP settings; 
- 
Set the following directives, for example (for PHP 7.0) and click OK to apply the change: include_path: ":/opt/plesk/php/7.0/share/pear:/home/example/whmcsdata/sessions" 
 session.save_path: ":/home/example/whmcsdata/sessions"
 open_basedir: ":{WEBSPACEROOT}{/}{:}{TMP}{/}:/home/example/whmcsdata/sessions"