web-dev-qa-db-ja.com

PHP session_start()で警告許可が拒否されました(13)

可能性のある複製:
session_start()を呼び出したときにパーミッションエラーを修正するにはどうすればよいですか?

次のエラーが表示されます。

PHP Warning:  session_start() [<a href='function.session-start'>function.session-start</a>]: open(/tmp/sess_49a20cbe1ef09a2d0262b3f7eb842e7b, O_RDWR) failed: Permission denied (13) in /home/------/public_html/includes/libs/ss.inc.php on line 1

問題は常に起こるわけではありませんが、行き来します。

このss.inc.phpの1行目のコード

<?php session_start(); ?>
45
Basic Bridge

サーバーの/tmpディレクトリへの書き込み権限がないようです。これは少し奇妙ですが、回避することができます。 Beforesession_start()への呼び出しはsession_save_path()への呼び出しを行い、サーバーが書き込み可能なディレクトリの名前を与えます。 詳細はこちら

77
Peter Rowell

phpinfo()を実行し、session.save_pathを探します。そこにあるディレクトリには、ウェブサーバーが実行されているユーザーまたはグループ、あるいはその両方に対する正しい権限が必要です。

14
marcelog

以前にこの問題が発生したことがあります。755情報を保存するには、標準の644または$_SESSION以上の権限が必要です。それが覚えているので、あなたはそのファイルに書き込むことができる必要があります。

4
Phil

/tmpに対する書き込み権限を持っていないようです。

構成変数 session.save_path を編集して、関数 session_save_path()1 directory abovepublic_html(したがって、外部ユーザーは情報にアクセスしません)。

4
Dor

PHPには、/ tmpディレクトリへの書き込み権限がありません。/tmpパーミッションを開くには、chmodコマンドを使用する必要があります。

2
user859749