PHPセッションファイルの権限は000です - 使用できません

PHPセッションファイルの権限は000です - 使用できません

インストールしようとしているドキュメント管理システムで問題が発生し続けました。インストール プロセスの最初のステップで、次のエラーが発生していました。

Warning: Unknown: open(/tmp/sess_d39cac7f80834b2ee069d0c867ac169c, O_RDWR) failed: Permission denied (13) in Unknown on line 0

Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0

/tmpを調べたところ、sess_*ファイルに次の権限があることがわかりました。

---------- 1 vanced vanced 1240 Jan 20 08:48 sess_d39cac7f80834b2ee069d0c867ac169c

すべてのセッション ファイルは次のようになります。したがって、明らかに PHP では使用できず、多くの問題が発生しています。

PHP に正しい権限を設定させるにはどうしたらいいでしょうか? php.ini が使用するディレクトリを /tmp/phpsessions に変更してみましたが、同じことが起こります。ディレクトリは ですa+rwx

答え1

フォルダ/tmpはセッションファイルのデフォルトのプレースホルダです。独自のカスタムセッションフォルダを使用することをお勧めします。

ホストが.htaccessオーバーライド権限を許可している場合は、以下のディレクティブを.htaccess以下のpublic_htmlフォルダに配置することができますhttpdocs

php_value session.save_path '/yourpath/sessionfolder'

phpモードで実行していない場合はsuphp、フォルダが他のユーザーによって書き込み可能であることを確認してください(777

答え2

このアカウントには特別な設定がありますかumask? どこかで誰かが不適切に設定したようです。次のような結果が返されるはずです:

% umask
0022

答え3

答え4

変更してみてくださいumask実際のアプリケーションでは。

index.php または bootstrap ファイルを見つけて、先頭に以下を追加します。

umask(0022);

関連情報