1

まず第一に、私は PHP プログラマーですが、何もしたことがCGIなく、それが何であるかも知りません。それが Common Gateway Interface の略であることは知っていますが、それが何をするのか、何のためにあるのかはわかりません。

シェル スクリプトを cgi-bin フォルダーにアップロードして実行できると言われました。

シェル スクリプトを作成myscript.shし、cgi-bin フォルダーにアップロードしました。私が最初に気付いたのは、私の cgi-bin フォルダーがルート ディレクトリの子ではなく兄弟であることです。だから私はそれにアクセスする方法がわからないのですか?

そこで、ルートの下にディレクトリを作成し、cgi-bin2そこにスクリプトを置きました (そして、それらを 755 に chmod しました)。次に、ブラウザからアクセスしましたが、ファイルをダウンロードするだけでした。

何か不足していますか?

4

1 に答える 1

3

CGI は Content-Type ヘッダーを送信する必要があります。

#!/bin/sh
printf "Content-Type: text/plain\n\n"
your_commands_here

anything.shcgi-binフォルダに(拡張子は問いません)名前を付けて保存してくださいchmod 755パブリック html フォルダーの子である必要はなく、エイリアスcgi-binにすることができます。

于 2010-09-03T14:56:55.897 に答える