プロが教える店舗&オフィスのセキュリティ対策術

ParlはCGIを設置するのにプロパイダのParlソフトを使わないとCGIが設置できないと聞きました
C言語の場合はParlソフトを使うわけではないのでプロパイダに聞かなくてもCGIは設置可能でしょうか?

A 回答 (4件)

それはcgiを設置しようとするプロバイダにたずねるべき事です。


それに実行ファイルを作るためのコンパイルはどうするつもりですか?

この回答への補足

結局プロパイダに聞かないとダメなのですね。
コンパイラーを使って普通に作るつもりです。

補足日時:2012/10/02 09:57
    • good
    • 0

>C言語のCGI


――ってのが、Cで書かれたCGIプログラムをコンパイルしてできた実行可能形式データだとしたら、可能では。ABIの違いとか、ランタイムライブラリの違いとかが無ければですが。

それ以前に、
> プロパイダのParlソフトを使わないとCGIが設置できない
――っていう命題が真でないような。
(※Perlのスペルミスじゃないかということを言いたいわけではないです)

正直、不明な点はプロバイダに照会した方が賢いかと。

この回答への補足

可能かもしれないけれどプロパイダに聞かないとダメなのですね

補足日時:2012/10/02 10:00
    • good
    • 0

(1)CGIをどのプログラミング言語で作成して、どの実行環境で実行するか?


(2)CGIとして実行できるか?
(3)サーバーの運営方針は?

これらは、それぞれ別の問題です。

(1)
プログラミング言語のPerlを使った作ったプログラム(CGI)は、Perlの実行環境が無いと動作できません。
> ParlはCGIを設置するのにプロパイダのParlソフトを使わないとCGIが設置できないと聞きました
が持つ意味の一つは、これです。

C言語で書かれたプログラムも、実行するには対応した実行環境が必要です。
コンパイルしてできた実行ファイルだけで動作しているように見えますが、実際には他にもたくさんの必要なものがあります。
例えば、Windows用の実行ファイルを動作させるには、最低限「Windows」という実行環境が必要です。
サーバー上で実行させるには、そのサーバーで実行できるものを用意する必要があります。

(2)
サーバーの設定によっては、CGIの実行を制限することが可能です。
・Perlで書かれたものだけ許可する
とか
・全て許可しない
とか、いろいろです。

・コンパイル済みの実行ファイルは許可しない
というのは、セキュリティを考えれば、よくある設定だと思われます。
このような設定だったら、聞くまでもなく、C言語で作ったCGIは動きません。

(3)
これらの設定は、プロバイダの運営方針に基くものです。
方針が違えば、設定も違います。

この回答への補足

●1
『実行環境』ですか
そんなのがあるのですね
C言語の実行環境を調べてみますね

●2
サーバーの設定をいじくれば可能なのですね

●3
となるとまったく別の疑問が出てきました。
何でプロパイダが必要になるのか?レンタルサーバーにおくだけじゃあダメなのか?
と言う疑問が質問のタイトルを変えて質問してみようと思います
ありがとうございました

補足日時:2012/10/02 10:27
    • good
    • 0

CGIに使える言語を限定しているプロバイダーがありますので、


利用規約等を確認するか、問い合わせた方が良いと思います。

たとえば@Niftyホームページサービスでは、C言語を使えない旨が書かれています。
http://homepage.nifty.com/outline/
>ご注意
>C言語、シェルスクリプトはご利用いただけません。

自宅にコンパイル環境を用意して実行ファイルを作ったとしても、C言語で作られているCGIアプリを使用して利用規約違反としてアカウント停止等になったとしても、補償はされません。


XREAでは利用可能です。
http://www.xrea.com/spec/
>使用可能な言語は、Perl(Version5.6 / 5.8)、Ruby、Python、C/C++、PHP3/4(日本語化パッチ済み)。
>(C、C++はあらかじめコンパイルしてアップロードしてください。)

この回答への補足

つまり
・プロパイダによって使えるのと使えないのがある
・使えないのをプロパイダの許可なくCGIを使うと追い出される(インターネット使用不可?強制退会?)

結論
プロパイダに聞けって事ですね

補足日時:2012/10/02 10:10
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!