[PHP-users 13026] Re: re【phpからのhttpd再起動について】

KAWASAKI php-users@php.gr.jp
Wed, 05 Feb 2003 13:30:19 +0900


マツザキさん、こんにちは。

On Wed, 5 Feb 2003 13:16:40 +0900
"zomu" <nozomu-matsuzaki@proof.ocn.ne.jp> さん wrote:

> > sudo を使ったらどうでしょうか?
> >
> > $pp = popen("sudo /usr/local/apache/bin/apachectl restart", "w" );
> > close ( $pp );
> >
> > #/etc/sudoersを設定してパスワード不要にしておかないと駄目かもですが。
> 
> /usr/sbin/visudo にて設定をしました。
> ●実行PHP所有者アカウントを登録
> ●使用コマンド (/usr/local/apache/bin/apachectl restart) 設定
> ●登録アカウントのコマンド実行時パスワード不要に設定
> 
> 直接コマンド (sudo /usr/local/apache/bin/apachectl restart) を叩くと
> パスワードを聞かれず実行可能なのですが、
> PHPからコマンドを実行したところ同じ結果が得られませんでした。
> 
> 
> ここまで教えて頂いて動かないのでコーディングにミスがあるのかもしれません。
> もう一度見直してみます。

私が似たような処理をやった時は popen() ではなく exec() を使って実現
していました。

$RESTART_COMMAND = "...."; // 再起動コマンド
$result = exec("sudo $RESTART_COMMAND", $output);

#あまり参考にならないかもしれませんが・・・m(__)m

P.S
popen()のモードで、popen("...", "r"); //
"r" は駄目なのかな、と、ふと思いましたが・・・


---
Kawasaki Tatsuo
kawasaki@wwing.net    http://www.wwing.net