6

に書き込むには、php からコマンドを実行する必要がありますvhosts.conf。私は1つのadd_vhost.shファイルを持っています:

cat /home/www/test/conf/vhosts.conf >> /etc/httpd/conf.d/vhosts.conf

これはphpスクリプトです:

 exec($path_to_add_vhost_sh_file, $output);

peterユーザーがこのファイルを実行するためのパスワード要件を設定したくないので、次のことを行いました/etc/sudoers

peter ALL=(ALL)NOPASSWD:/home/www/test/conf/add_vhost.shしかし、コンソールでもまだ機能していません。フェドラ15

4

1 に答える 1

8

Web サーバーがwww-dataユーザー user として実行されている場合:

www-data ALL=(ALL:ALL) NOPASSWD: /path/to/your/script

www-dataそうでない場合は、 Web サーバーのユーザー名に置き換えてください。

php では、コマンド ラインの先頭に次を追加することをお忘れなくsudo:

exec('sudo /path/to/your/script');
于 2013-04-22T13:59:52.653 に答える