- ベストアンサー
suexec環境でSeetEnvをhttpdの再コンパイルなしで有効にする方法はあるでしょうか?
suexec.cを書き換えてhttpdを再コンパイルすればいいということは知っています。ただ、私が管理しているサーバーの一部はyumで落としてきたものなので、どうしたらいいか分からないのです。ソースを落としてきて再コンパイル、再インストールするのでは、ファイルの場所が違いたいへんです。 再コンパイルなしで、SetEnvを有効にする方法をご存知の方がいらっしゃったら御教えいただけないでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
suexecが有効のままでsetenvで追加した環境変数を CGIなどで使う方法は判りません Apache-MLの過去ログも検索しましたが見つかりません ・CGIで環境変数を追加して、同じCGIまたは、その子プロセスでは、その環境変数は有効だと思います ・.htaccess中のsetenvで追加した環境変数は 同じ .htaccessの中では有効だったと思います http://oshiete1.goo.ne.jp/kotaeru.php3?q=2078751 に書いたような例だと SetEnvIf Referer "^http://www\.hoge\.com/" ref_ok 中略 allow from env=ref_ok と言うのはsuexecでも、たしか使えたはずです。 但し、CGI中で $ENV{'ref_ok'} を得ようとしても駄目なんですよね ・suexecを無効化するには httpd.confの該当行をコメントアウトしてからhttpdの再起動 #LoadModule suexec_module modules/mod_suexec.so これで出来るはずですが、、、 これじゃあ、質問者の望む答えになってないだろうなあ
その他の回答 (1)
- astronaut
- ベストアンサー率58% (303/516)
「再コンパイル無しで」という要求が、「ファイルの場所が違いたいへん」に起因するのであれば、yumでインストールされているパッケージのsrc.rpmを入手して、ソースを変更してパッケージを作り直す、という手もあります。
お礼
ありがとうございました。 すでにyumで入れたものが動いているので、ソースからビルドした方を変える必要がありました。configue でなんとかなるのかもしれませんが、かえって面倒そうなので、今後のこともあるのし、ソースから入れなおすことにしました。
お礼
ありがとうございました。 今後のこともあるので、ソースから入れなおすことにしました。
補足
ご回答ありがとうございます。 うーん、なかなか難しいんですねえ。suexec をはずすのはちょと、、、 もう少し待ってみて、方法が見つからないのなら、ソースからインストールすることにします。