3

session_id($id)セッションを既存のものと置き換えるために使用したい。セッション ディレクトリを に移動し/tmp/php_sess、そのフォルダに 777 のアクセス許可を設定しました。

ただし、PHP は許可を得てそのフォルダーにセッション ファイルを作成します。

-rw-------

そして、別のスクリプト (CLI から) はそれを読み取ることができません。どのように PHP にファイルを作成するように指示するか ( 777 ) ?

4

3 に答える 3

1

私はいくつかの解決策を見つけました。PHP は、セッションを作成するときに、ファイルにパーミッションを設定できます。

session_start();
$path = session_save_path().'/sess_'.session_id();
chmod($path, 0777);
于 2013-02-06T09:17:54.923 に答える
1

ディレクトリを監視するようにincronを設定し、ファイルの作成時にchmodを777に設定できます。きれいではありませんが、効果的です。構成は次のようになります。

/tmp/php_sess IN_CREATE chmod 777 $@/$#

コマンドがルート権限で実行されるように、これはルート incron 構成にある必要があります。構成オプションの詳細については、こちらをご覧ください。

于 2013-02-20T22:25:55.987 に答える