• ベストアンサー

Apache初心者です

本日一度質問しました。 10日で覚えるPerl/CGI入門教室という参考書を買って ApacheとActivePerlをインストールしました。 Apacheはバージョン5.1.2600.0になっています。 これで、インストールは完了し、本書の通りに インストール先も完璧に出来ているはずです。 第一日目のお勉強が  #! c:/perl/bin/perl print "Content-type: text/plain\n\n"; print "Hello Perl !"; これでブラウザには Hello Perl ! と表示されるはずなのですが #! c:/perl/bin/perl print "Content-type: text/plain\n\n"; print "Hello Perl !"; ↑このまんまが表示されます。 一日目でつまずいてしまって途方にくれてます。 WindowsXP ウイルスバスター2006が入っていて 3台のPCをルーターで繋げています。 どこに間違えがあるのでしょうか? 初歩的なことですみません。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

#1さんのにもう少しつけたさせていただきます。 windows版Apacheで PerlのCGIを動かすために必要な設定は 1.ScriptAliasで設定されたcgi-binなどのフォルダに入れてしまうか 2.httpd.confの該当ディレクトリコンテナに AddHandler cgi-script .cgi と Options ExecCGI (またはOptions All) の2つを記述するか 3. httpd.confの該当ディレクトリコンテナに AllowOverride All などと記述して .htaccessを有効にしておいて .htaccess に  AddHandler cgi-script .cgi と Options ExecCGI (またはOptions All) の2つを記述するか の3つ方法があります ### あと >print "Content-type: text/plain\n\n"; 文法的には正しいのですがMS-IEでは正しく表示されないかもしれません  (ダウンロード画面になってしまう場合がある) その場合は print "Content-type: text/html\n\n"; print "<html><h1>Hello Perl !</h1>"; などとhtml形式にしてみてください

mmmm2009
質問者

お礼

出来ました!!嬉しいです。 ご丁寧な回答を本当にありがとうございました。 助かりました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • pipipi523
  • ベストアンサー率40% (148/365)
回答No.1

httpd.confの設定がまずいのでは? CGIを入れてあるフォルダの設定を、 <Directory "C:/www"> AllowOverride All Options All </Directory> にしてしまうとか、 #AddHandler cgi-script .cgi のようになっていたら、 AddHandler cgi-script .cgi に直すとか…

mmmm2009
質問者

お礼

出来ました! 本当にありがとうございました。 また、つまずいてしまうことがあるかもしれませんが その時はまた、宜しくお願い致します。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Apache初心者です

    10日で覚えるPerl/CGI入門教室という参考書を買って ApacheとActivePerlをインストールしました。 Apacheはバージョン5.1.2600.0になっています。 これで、インストールは完了し、本書の通りに インストール先も完璧に出来ているはずです。 第一日目のお勉強が  #! c:/perl/bin/perl print "Content-type: text/plain\n\n"; print "Hello Perl !"; これでブラウザには Hello Perl ! と表示されるはずなのですが Forbidden You don't have permission to access /tendays/1-1.cgi on this server. Apache/2.0.54 (Win32) Server at 127.0.0.1 Port 80 などとなってしまい、色々調べてはみてるのですが・・。 一日目でつまずいてしまって途方にくれてます。 WindowsXP ウイルスバスター2006が入っていて 3台のPCをルーターで繋げています。 どこに間違えがあるのでしょうか? 初歩的なことですみません。

    • ベストアンサー
    • CGI
  • ActivePerlとApacheを自分のPCにインストールしたのですが・・・。

    お願いします。 ActivePerlとApacheを自分のPCにインストールし、 CGIのテストを試みました。 Apacheのインストールは上手くいったのですが、ActivePerl がどうもうまく動きません。 Perlのインストール後、環境変数を Path→「C:\Perl\bin\;C:\Perl\bin;C:\Perl\bin\」に変更、 htdocsフォルダ内にメモ帳で記述したhello.cgiを保存後、 ブラウザにh t tp://localhost/hello.cgiと入力しても ファイルが見つかりませんと返されます。 ちなみにhello.cgiの中身は #!C:/Perl/bin/perl print "Content-Type: text/html\n\n"; print "<html>\n"; print "<body>\n"; print "<h1>Hello World!</h1>\n"; print "</body>\n"; print "</html>\n"; exit; です。使用マシンはWIN XPで ActivePerlのバージョンは5.8.8,Apacheは2.2.4です。 何か助言がございましたらよろしくお願いします。

    • ベストアンサー
    • Perl
  • Apacheを入れたのにローカルでCGIが動かない

    こんにちは。今CGIの勉強をしています。perlを使っているのですが、サーバーにアップする前にローカルで動作チェックをしようと思い、ApacheとActivePerlをインストールしました。 その後、Apacheを起動して、ローカルのCGIファイルにアクセスしたのですが、ページを表示できませんと出てしまいます。 ping localhostはちゃんと通ります。 環境 OS:WindowsXP HomeEdition SP2 セキュリティーソフト:無し ファイヤーウォール:解除済み Apache設定 Network Domain 127.0.0.1 Server Name   127.0.0.1 Version2.0.58 ブラウザ:IE6.0 プログラム保存先:C:\Program Files\Apache Group\Apache2\htdocs ファイル名:hello.cgi(拡張子表示有にしている。.txtなどは無い) ActivePerl:Version5.6 保存先:C:\Perl\bin(C直下) コード #!C:/Perl/bin/perl print "Content-Type: text/html\n\n"; print "<html>\n"; print "<body>\n"; print "<h1>Hello World!</h1>\n"; print "</body>\n"; print "</html>\n"; exit; 参考にしたサイト http://perl.misty.ne.jp/01.html 以上よろしくお願いします。

    • ベストアンサー
    • CGI
  • Perl+DBI+Apacheの動作

    #!C:\\Perl\\bin\\MSWin32-x86-object\\jperl use DBI; print \"Content-type:text/html\\n\\n\"; print \"<html><body>test script</body></html>\\n\"; という内容のスクリプトを指定したフォルダの中に入れても、「test script]とブラウザ上に表示されません。そのまま「#!C:\\Perl\\bin\\MSWin32-x86-object\\jperl use DBI; print \"Content-type:text/html\\n\\n\"; print \"test script\\n\";」と 表示されます。 Apache、ActivePerl、Mysql、DBI、DBDはインストールし、Apacheも動作しているのは確認できます。 どうしてなのでしょうか。解決方法を教えていただけると助かります。どうぞよろしくお願いします。

    • ベストアンサー
    • Perl
  • Apacheの設定について

    WindowsXP SP2 のローカルでCGIを動作させるために  http://www.adminweb.jp/apache/ を参考に下記を試みました。 (1)Apache ダウンロード・インストール・接続確認   「http://localhost/」へアクセスして「It works!」表示確認    (htdocs ディレクトリの index.html) (2)ActivePerlインストール    perl -v perl -h で動作確認 (3)CGI用エイリアスの設定    ScriptAlias /cgi-bin/ "C:/SERVER/Apache/cgi-bin/" (4)以下の test.pl を C:/SERVER/Apache/cgi-bin/ に設置    ------------------------------------------------------    #!C:/Perl/bin/perl.exe print "Content-type: text/html;\n\n"; print "<html><body><h1>test cgi</h1></body></html>\n";   -------------------------------------------------------    http://localhost/cgi-bin/test.pl の実行で    「Internal Server Error」になってしまいます。 どこの設定が間違っているのか見当がつきません。 何卒ご指導宜しくお願い致します。

  • Apacheでcgiができないんです。

    以下のホームページと同じように、設定したのですが。。。 http://www.futomi.com/lecture/apache/config.html 下のcgiは実行できます。 #!/usr/local/bin/perl print "Content-type: text/html\n\n"; print "<HTML>\n"; print "<HEAD>\n"; print "<TITLE>Apache</TITLE>\n"; print "</HEAD>\n"; print "<BODY>\n"; print "<H2>Welcome to my computer, Apache Server!</H2>\n"; print "</BODY>\n"; print "</HTML>\n"; しかし、下のcgiは実行できません。htmlファイル、cgiファイル共に、あるホームページからコピペしたので、間違いないと思います。ここではhtmlファイルは書きませんが、以下のURLです。 http://www2j.biglobe.ne.jp/~apollo/server/apacuse.html #!/usr/local/bin/perl $countfile= "count.dat"; open(IN, "< $countfile"); $count = <IN>; close(IN); $count++; open(OUT,"> $countfile"); print OUT $count; close(OUT); print "Content-type: text/plain\n\n"; print $count;

    • ベストアンサー
    • CGI
  • ApacheでCGIが正しく動かない。

    RedHatLinux8をインストールして、 Webサーバーを立てよう~と思い立ててみました。 Apache2.0.40です。 一応htmlファイルはのぞけるようになったんですが、 CGIがちょっとおかしくて・・・ #!/usr/bin/perl print "Content-type: text/html\r\n\r\n"; print "Hello, World."; ↑を書いたtest.plはHello, Worldとちゃんと表示されました。 しかし、掲示板・カウンターを開くと・・・ 「ログファイルを開くことができません」 という主旨のメッセージが表示され、正しく実行できません。 ./log.txt とちゃんと指定しているんですが・・・ そのログファイルを開くとサーバーがCGIをして認識しているらしく、 「InternetServerError」が出て開けない・・・。 CGIの属性は755 ログも緩くして755に設定しました。 それでも状況は変わりません。

  • ApacheでCGIが正常に動作しません。

    httpd.confの設定でPerl.exeの場所の指定は必要なのでしょうか? 以下の場所に設定を行うのかと思ったのですが、設定するとApache起動時にprogram filesがエラーになってしまいます。 ServerSignature On !g:/program files/apache group/apache/perl/bin/" 設定が必要であれば設定方法をお願いします。 httpd.confの設定に <Directory "G:/Program Files/Apache Group/Apache/cgi-bin"> AllowOverride None # Options None Options ExecCGI Order allow,deny Allow from all </Directory> は追加してあります。 現在、CGIの結果として #!/perl/bin/Perl.exe print "Content-type: text/html\n\n"; print "\n"; print " Hello! WORLD \n"; print "\n"; exit; のように表示されない命令も全て表示されます。 本当はHello!WORLDだけを表示したいのですが。

  • CGIでソースがそのままでてしまうのですが・・・。

    CGIでソースがそのまま表示されてしまうのですが、どうしてなのでしょうか? 先週からCGIやPerlを学び始めました。そこで簡単なものを試しに作ってみたのですが、入力したソースがそのまま表記されてしまいます。 ちなみに、こんなものです。 #! c:/perl64/bin/perl print "Content-type: text/plain\n\n"; print "Hello Perl !"; どこをどう変えればいいのか、わからないので、質問してみました。 わかる方がいましたら、教えてください。 初心者なので、お手柔らかにお願いします。 . この質問に補足する.

    • ベストアンサー
    • CGI
  • ブラウザが表示されません

    perl初心者です。これから勉強しようとしてます。 ですが、プログラムを打つ前に早速難関が・・・ perlをブラウザで表示しようとしてるのですが、出来ません!!(><) 本の通りに次のような作業をしました。 __________________ 1、ActivePerlのインストール 2、AN HTTPDのインストール 3、試しにcgi-binフォルダ内にhello.plの作成。 内容___________ #!/usr/bin/perl print"content-type: text/html\n\n"; print "Hello,world!"; _______________ と、打ち、コマンドプロンプトでperl hello.plと、入力すると、 content-type: text/html Hello,world! と、出力されます。 ですが、本の通り、ブラウザのアドレスバーに ”​http://localhost/cgi-bin/hello.pl​” と、入力すれば、Hello,world!と、表示されるはずなのに されません。 ちなみに、 サーバーが見つからないか、DNS エラーです。 と、表示されます 同じような質問があり、そこでの対策も試してみましたが、 どれも効果がありません。 初歩的な質問で申し訳ありません。 しかし、これからperlを勉強するに当たって避けては通れない道だと 思い、質問しました。 解決策以外にも他の方法でブラウザで表示する方法が あれば、そちらも試してみたいと思ってますので、 そちらのほうも、紹介していただけるなら、よろしくお願いします

このQ&Aのポイント
  • splwow64.exeのイメージで、PCに入っている「BRENI16A.DLL」が実行できないかエラーを含んでいるため、再インストールかソフト製造元に問い合わせてくださいというエラーメッセージが表示されました。
  • お使いの環境はWindows10であり、無線LAN接続を使用しています。Wi-Fiルーターの機種名はHUAWEIです。電話回線はひかり回線です。
  • ブラザー製品に関する質問です。FAQのタイトルは「インクジェット プリンター」お困りごとナビ インクジェットプリンター・複合機 エラーメッセージが出ている|ブラザーです。
回答を見る

専門家に質問してみよう