権限:Apacheにさらにユーザー権限を付与する正しい方法は何ですか?

権限:Apacheにさらにユーザー権限を付与する正しい方法は何ですか?

コンテキスト:私は、プロジェクト内のさまざまなデータを処理するために作成したスクリプトライブラリ(.shと.php)にワンクリックでアクセスできるブラウザ内のコントロールパネルを作成しています。これはプロジェクトデータを管理するための「ワンストップショップ」です。

私は良い進歩を遂げました。私はApache、PHP、MySQLを実行しており、フロントエンドは次の場所にあります。http://localhost。これまではそんなに上手だった!

今私が持っている問題はこれです。デフォルトのApacheユーザー(私のコンピュータでは「_www」と呼ばれる)が私のスクリプトのいくつかを実行する権限がないようであることを除いて、うまく機能するindex.phpがあります。

だから私がするとき:

<?php
    echo `ls`;
    echo `whoami`;
    echo `/Path/To/Custom/Script.sh`;
?>

lsとの出力を得ましたwhoamiが、カスタムスクリプトでは何の結果も得られませんでした。私がしたように(対話型シェルで)カスタムスクリプトを実行すると、もちろん動作します。

最後に私の質問は:何ですか?正しい設定する方法です。 Webサーバーは私のサーバーのように動作しますか?または、_wwwが自分のカスタムスクリプトを実行できるように権限を変更しますか?

ベストアンサー1

/usr/local/bin最善の方法は、Webサーバーが実行するのに十分な権限を持つ標準の場所(たとえば)にスクリプトを配置することです。

これがオプションでない場合は、スクリプトグループを変更してからchgrp groupname pathそのグループに対して実行可能にすることができますchmod g+x path_wwwユーザーがまだグループにいない場合は、グループに追加しますusermod -aG groupname _www

おすすめ記事