C言語にて簡単なCGIを作成しました。
gcc -o xxx.cgi xxx.c
コンパイルをするとそのサーバでは問題なく動きます。
コンパイルしたCGIファイルを同じ環境の別サーバに
持っていくとInternalServerErrorとなり実行できません。
パーミッションもディレクトリ構造もApacheの設定も
サーバ名、IPアドレスを除いて同じ設定です。
これは動作させるサーバ毎にコンパイルする必要が
あるものなのでしょうか?もしサーバ毎にコンパイルする
必要があるのであればそれはどうしてなのでしょうか?
もしくはなにか間違っているのでしょうか?
お手数ですが、お分かりになる方、お教えください。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
厳密に言えば、サーバごとに再コンパイルが必要です。
同じバージョンのOSでも、インストール状態によってはリンクするライブラリがインストールされない場合もありますので。
No.3
- 回答日時:
サーバが Apache ということで、Internal Server Error になった時には、必ずログファイルにその理由が残されているはずですが、それはチェックされましたか?
そのメッセージを書いていただければ、何かお役に立てるかも知れません。
多分、OS(特にDLL)のバージョンの違い等により、ランタイムエラーが起こっているのだとは思いますが…
この回答への補足
すいません。Apacheのerror_logは以下のとおりです。
[Wed Nov 28 18:27:24 2001] [error] [client xxx.xxx.xxx.xxx] Premature end of script headers: /usr/local/apache/cgi-bin/xxx.cgi
ソースはサンプルソースを使いました。
#include <stdio.h>
#include <stdlib.h>
char *getenvs(char *str){
char *ev;
ev = getenv(str);
if( ev == NULL ){
ev = "none";
}
return(ev);
}
main(){
printf("Content-type: text/plain\n\n");
printf("SERVER_SOFTWARE = %s \n",getenvs("SERVER_SOFTWARE"));
}
上記ソースを gcc -o xxx.cgi xxx.c でコンパイルしました。
OSはLinuxOSでディストリビュータ、カーネル共に同じバージョンです。
OSのバージョンが同じであればコンパイル後のCGIを別サーバでも動作するの
ものなのでしょうか?
大変お手数ですが、ご教授ください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- サーバー 別サーバに構築したApache+Tomcatの連携について 2 2023/03/06 23:23
- CGI CGIが読み書きするデータファイルのパーミッションはさくらのインターネットでは何にするべき? 1 2023/05/02 16:44
- C言語・C++・C# Cのコンパイルでコメントアウトをそのままオブジェクトに保持したい 7 2023/08/01 22:22
- サーバー ログオンユーザーがいない場合に自動再起動 1 2022/09/28 09:53
- サーバー FTPサーバについて詳しい方(アクセス権のないディレクトリを非表示にする方法) 4 2022/08/22 22:33
- WordPress(ワードプレス) WordPressの編集画面がいつもと違うのですがこれは何でしょう? 1 2023/03/29 10:26
- Windows 10 だいたいの能力はどのくらいでしょうか 3 2023/03/05 17:18
- C言語・C++・C# condaコマンドに対応したプロキシ設定が思うようにならないようです。 2 2022/04/11 17:15
- その他(メールソフト・メールサービス) メールが送信できない 発信側でできる対策 3 2023/05/11 10:22
- VPN DNS「8.8.8.8」とは何なのでしょうか? 固定 IP アドレスで光回線の代わりに使えますか? 4 2022/10/17 16:30
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ASPでDLLの使用方法
-
「EJBとServletの違い」「J2SE...
-
EXCELファイルに誰がアクセスし...
-
ApacheでのCGIについての質問
-
《エクセルVBA》「他の人が該当...
-
カタカナを英語やフランス語に...
-
.htaccessを2つ以上設置した場合
-
SFTPなどは使わないホームペー...
-
Ajax React Jqueryの位置づけと...
-
Perlプログラム上でアラートを表示
-
CGI掲示板のバーミッションにつ...
-
NAMAZUでの文字化け
-
#!/usr/local/bin/perlとしたい
-
自前のアップローダの作り方
-
ニフティでメールフォームを使...
-
CGIって何ですか?簡潔に教えて...
-
FTPにて553エラー
-
KENT WEBのページカウンタのタ...
-
FC2へのCGIメールフォーム設置
-
クライアントサイドとサーバー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAを使用して、外部サーバのフ...
-
コンパイルされたCGI(C言語)を...
-
ASPでDLLの使用方法
-
CGIが壊れるて?
-
HTML文書の中で環境変数を使う...
-
「EJBとServletの違い」「J2SE...
-
ASPからJavaScriptへの受け渡し...
-
サーバにアップせず、ローカル...
-
IISのバージョンとASPについて
-
Image::Magickの呼び出し
-
【緊急】セッション変数を別の...
-
あるopencvのコード、なぜカラ...
-
namazuについて
-
HP-UX (IA64)にVNC等でリモート...
-
ソースを見せたくないです。
-
メールアドレスの@から後ろが・...
-
LAN内に接続されているPCをリ...
-
opencvのコード、エラー発生
-
アンケートフォームのデータを...
-
TwitterAPIを使用せずに自動ツ...
おすすめ情報