httpd-2.2.17を使っております。
--enable-suexec でconfigure しておりますが、cgi の中でいくつかのモジュールを使う関係で LD_LIBRARY_PATH を設定する必要があります。
そのため、httpd.conf に
SetEnv LD_LIBRARY_PATH xxxxxxxxxxxx
を記述しております。
ところが、cgi でモジュールを使おうとすると、読み込みに失敗してしまいます。調べてみると SetEnv で設定したはずの LD_LIBRARY_PATH が設定されていません。
さらに、いろいろ調べて suexec を使っているために SetEnv が無効になっていると分かりました。
しかし、suexec はセキュリティ的には便利なのでできれば、使いたいのです。
suexec を有効にしつつ、cgi に環境変数を渡す方法はないでしょうか?
No.3ベストアンサー
- 回答日時:
POSTは標準入力からくるので、 read ln ; echo $ln | ./hello.cgi とかすると
いけると思いますが、試してませんです。
mod_rewite でも環境変数セットできたと思ったのですが、結局 SetEnv と同じようなので
ダメみたいですね。
LD_LIBLARY_PATHにしないで、ライブラリフォルダに放りこむってのはダメなんでしょうか?
Linux系なら /etc/ld.so.conf とかにPATH書いちゃうとか。。。
現在は /usr/lib に ln -s でリンクを作って対応しています。
とにかく、どうやってもsuexec と SetEnv は両立しないということで、諦めるしかないのでしょうか?
これがはっきりすれば、諦めてシンボリックリンクを作る方法で行こうと思います。
しかし httpd のconfigure とかで suexec と SetEnv を両立させる方法があるのなら、それをやった方がすっとスマートなので質問をしています。
No.2
- 回答日時:
cgi を別のcgiでwrapするとか言ってみる。
CentOS 5.5 上で shell でwrapしてみたらいけそうだけど。
shell だとイケテないですが、環境変数設定できる言語ならなんでもいいんじゃないかと。
[環境変数変数表示]
$ cat hello.cgi
#!/bin/sh
echo "Content-type: text/html";
echo ""
echo "<pre>"
env
echo "</pre>"
[環境変数設定ラッパー]
$ cat hellowrapper.cgi
#!/bin/sh
export LD_LIBRALY_PATH=$(/usr/bin/readlink -f ../../lib)
./hello.cgi
ご回答有難うございます。
ご回答の方法はcgiのパラメータがgetの場合はうまく行きそうですが、post の時にうまく動くでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(IT・Webサービス) ホームページにカウント数を表示する 2 2022/10/28 10:37
- Windows 10 pathが通らない 2 2023/03/27 11:28
- CGI (フリーの)ツリー掲示版CGI、昔は多用させてもらいましたが・・今セキュリティ上どうでしょう? 2 2023/06/25 07:18
- Perl Perl の外部モジュールの利用方法 3 2022/07/10 18:34
- PostgreSQL PostgreSQL14.6のSSL対応について 1 2023/01/05 15:42
- ルーター・ネットワーク機器 AU光10G回線について 6 2022/07/25 00:12
- CGI CGIが読み書きするデータファイルのパーミッションはさくらのインターネットでは何にするべき? 1 2023/05/02 16:44
- デスクトップパソコン z390-p 外付けGPU優先 4 2023/06/03 22:52
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2022/10/26 17:14
- ホームページ作成・プログラミング CGIが実行可能なHP領域又はレンタルサーバーでおすすめの所を教えてください 現在ホームページ領域の 1 2023/01/01 11:47
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~12/2】 国民的アニメ『サザエさん』が打ち切りになった理由を教えてください
- ・ちょっと先の未来クイズ第5問
- ・【お題】ヒーローの謝罪会見
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
httpd で SetEnv が使えない
-
<a href="URL" utn>○○</a> で...
-
NANAの革ジャン!!!
-
iframeの中から、親frameのURL...
-
EXCELファイルに誰がアクセスし...
-
URLに~/cgi-bin/~を隠す方法
-
《エクセルVBA》「他の人が該当...
-
パーミッションの決まりを教え...
-
「EJBとServletの違い」「J2SE...
-
インストールしたCGIファイル
-
ApacheでのCGIについての質問
-
CGIでソースがそのままでてしま...
-
vbでFTPサーバーに対して、サー...
-
MT/カスタムフィールドでのPDF...
-
IISでエラー、Apachでは動くの...
-
ラジオボタンのグループ化
-
古ーくからフリーのtree.cgi掲...
-
C# ファイル削除のエラーコード
-
クライアントサイドとサーバー...
-
SSIを呼び出した元ファイルの名...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
perl 矢印演算子 -> の使い方
-
NANAの革ジャン!!!
-
DiaryCGI nicky! について 新し...
-
nickyのカテゴリ分け機能
-
チェックボックスの数値を、PER...
-
歌詞画ってどうやって作るの?
-
KENT WEB(昨日の続きです)
-
東京ドームから幕張メッセまで...
-
cgiからcgiを呼び出す方法
-
トーナメント表を自動生成でき...
-
株価の動き
-
クロネコメール便の問い合わせ...
-
<a href="URL" utn>○○</a> で...
-
カタカナを英語やフランス語に...
-
<!--#exec cmdについて
-
「からし」と「マスタード」の...
-
.htaccess で一部の.cgiをアク...
-
リビングのソファー(皮)のキ...
-
電子回路の教科書を教えてください
-
EXCELファイルに誰がアクセスし...
おすすめ情報