• 締切済み

Apacheの設定に関して

Windowsの環境でApache、CGI、perlを用いた環境を構築 しようと考えています。 色々ホームページを検索してみましたが、詳細に書かれた ページが見つかりませんでした。 (以前はPHPを用いた環境は作成した事はあります。) 参考になるようなページがありましたら教えて下さい。 宜しくお願いします。

  • CGI
  • 回答数3
  • ありがとう数0

みんなの回答

  • leap_day
  • ベストアンサー率60% (338/561)
回答No.3

こんにちは 以下をコピペして≪test.cgi≫をSAフォルダに保存してみてください #! c:/perl/bin/perl require './jcode.pl'; &decode; &html; sub html { &header; print "testです\n"; &footer; exit; } #---------------# # HTMLヘッダー # #---------------# sub header { print "Content-type: text/html\n\n"; print <<EOM; <html> <head> <META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=Shift_JIS"> <title>test</title> </head> <body> EOM } #------------------# # HTMLのフッター # #------------------# sub footer { print "</body></html>\n"; } #--------------------# # フォームデコード # #--------------------# sub decode { if ($ENV{'REQUEST_METHOD'} eq "POST") { read(STDIN, $buf, $ENV{'CONTENT_LENGTH'}); } else { $buf = $ENV{'QUERY_STRING'}; } undef(%in); my @buf = split(/&/, $buf); foreach (@buf) { my ($key, $val) = split(/=/); $val =~ tr/+/ /; $val =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("H2", $1)/eg; # SJISコード変換 &jcode::convert(\$val, 'sjis'); # エスケープ $val =~ s/&/&/g; $val =~ s/"/"/g; $val =~ s/</</g; $val =~ s/>/>/g; $val =~ s/\r\n/<br>/g; $val =~ s/\r/<br>/g; $val =~ s/\n/<br>/g; $in{$key} = $val; } } それでブラウザでhttp://127.0.0.1/SA/test.cgi もしくはhttp://localhost/SA/test.cgiと入力してみてください 『testです』とブラウザ表示されると思うのですが・・・ jcord.plは同一ディレクトリ内(SAフォルダ内)に保存してくださいね http://mikeneko.creator.club.ne.jp/~lab/kcode/jcode.html#h1-2 PHPの方もApacheでやっていたのですかね? Apacheのほうでやっててhttd.confの設定だけを変えているのであればPHPファイルを置いているフォルダの方にcgiファイルを置いてみてはどうですか? http://tech.bayashi.net/faq/nodl.html http://sakaguch.com/pastbbs/0035/B0017909.html

  • leap_day
  • ベストアンサー率60% (338/561)
回答No.2

こんにちは <IfModule mod_userdir.c>の変更をするようには書いていないのでバージョンが違うのかなと思いますけど・・・ 参考になればと思い、以前回答したのを載せておきますね(^^) http://okwave.jp/qa2824758.html cgiファイルの行頭は #!/usr/local/bin/perl ではなく #! c:/perl/bin/perl となります

SANA_999
質問者

補足

回答ありがとうございます。 あともう少しのところまできました。 apacheも正常に動作している事が確認されました。 しかし、C:\ApacheGroup\Apache2\htdocsの下にSAというフォルダを 作成し、その中でSAM.cgiというファイルを http://localhost/SA/ SAM.cgiと指定した場合、ファイルが開くのではなく、ダウンロード となってしまいます。 何か設定が間違っているのでしょうか・・・。 教えて下さい。

  • ptakeda
  • ベストアンサー率53% (7/13)
回答No.1

すこしググってやれば参考URLのようなサイトが見付かると思います。 ここの内容では、不足でしょうか? PHPを用いた環境を作れるのであればそれほど難しくは無いと思います。 ただ、PHPの環境を「XAMPP」とかでお気軽に作っていたのであれば別ですが・・・(私は、お気軽に作りますが・・・外向けのサーバーは作らないので)

参考URL:
http://www.futomi.com/lecture/apache/index.html
SANA_999
質問者

補足

ご回答ありがとうございます。 もう少しだけ教えて下さい。 CGIもperlもインストールし、CGIが動いている事は確認できましたが、 CGIを動作させるフォルダを変更したいと考えています。 <IfModule mod_userdir.c> のあたりを変更すれば良いと記述してありましたが、私のapacheの "httd.conf"にはそのような記述がありません。。。 どこを変えたら良いでしょうか。。。。

関連するQ&A

  • Apacheの環境設定についての質問です。

    Apache環境設定について質問いたします。 以前に、PHPの環境をApacheで作りまして、 その後、jspを勉強するのに、一度、PHPを削除し、 JavaやTomcatのインストール、そしてApacheをインストールし、 jspを始めたときがありますが、 Apacheをインストールしていれば、PHP、JSP、Perl、Tomcatなど、 関係なく使うことが出来るのですか、サーバにファイルを置くだけ と言う感じなのでしょうか、 環境変数など指定しますが、  ; で繋いでおけば良いとか 参考になるWebページでも構いません、 是非、よろしくお願いします。

  • Apacheの設定はどうすればいいですか?

    今度CGIのPerl(ActivePerl)をインストールしました。ApacheはPHP用にはインストールされていますが、又インストールしなければならないのでしょうか?困っているため、わかる方よろしくお願いします。Windowsを使っています。もう一度インストールする必要がある場合、今のApacheはどうすればいいでしょうか。Stopでとめればいいのでしょうか。

    • ベストアンサー
    • CGI
  • CGI版PHP?

    よろしくお願いします 現在ローカルで Windows2000+Apache2+php4のPHPの実行可能環境を構築しています ところが、現在使用しているサーバーの1つが CGI版PHPというのかどうかわかりませんが 拡張子を.cgiにして1行目に #!/usr/local/bin/php-cgi-4.3.11 などを書いてPHPを実行する方法をとっています これだと、ローカルで構築したあとに拡張子を変えて リンクを変えて・・・と面倒なので 拡張子がphpでもcgiでも実行できる環境を構築できないかと思い 質問させていただきました 参考になるホームページなどがありましたら教えていただけないでしょうか?

  • 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のhttpd.confの設定方法がわかりません

    ただいまPHPとPerlを勉強しようと思い、環境設定に取り組んでいます。 PHPの本を買ってきて、その本に付属しているPHPDEV5というPHPとApache2とMySQLの付いているものをインストールしました。PHPの方は何の問題もなく動作しています。 Perlも本を買ってきたんですが、Perlの本の方もサーバとしてApache2を使っているんですが、最初にインストールしたPHPDEV5付属のApache2のhttpd.confファイルの中身が違っていて、Perlの解説本のとおりにhttpd.confファイルを修正できないため、どのように修正すれば、CGIができるようになるのか分かりません。 どなたかもし設定ファイルの方法がわかる方がいましたら、教えてください。よろしくおねがいします。

    • ベストアンサー
    • Perl
  • ApacheでCは使える?

    こんにちわ。 今CGIについて勉強しています。 Perlをメインに勉強しているのですが、複雑な処理は得意なCでCGIを作成しようと思っています。 そこで、ApacheでCを使いたいと思っているのですが、 具体的な使用方法が分かりません。 Apacheの設定方法など詳細な説明をお願いします。

    • 締切済み
    • CGI
  • apacheの設定について

    環境はcentos6.5、Apache/2.2.15です。 http://centossrv.com/ CentOSで自宅サーバー構築のページを見ながらWebサーバー構築(Apache)をしています。 http://centossrv.com/apache.shtml このページの通りやってみたのですが、 ポート開放、OK、 http://www.websitepulse.com/help/tools.php?host=&test=web&do=Go! Website test resultsのテストもOKでした。しかし http://サーバー名/にアクセスしてテストページが表示されればOK 、とありますが、 このとおりにやっても、空白のページしか表示されませんでした。 公開するためにやっているのではなく、 /var/www/html/index.htmlにあるこの/index.htmlというページが、サーバ名で表示させたいだけです。 ServerNameで何故index.htmlが表示されないのかが解りません。 情報量少なくてスミマセン。 何か解った方、宜しくお願いします。

  • perlでDBアクセスする際にapache設定

    本日、DBI->CONNECTで返ってこないと質問をしたものです。 色々と調べているうちに、もしかしたらDBアクセスはおわり、その後のCGIが表示できなくなっているかもしれないと思うようになりました。 ORCLE9iがあるあとで、PERL,Apacheをインストールしました。 DBアクセスをしない状況ですと、CGIのプログラムは何の問題も無く、動きます。 ただ、DBアクセスしようとするとエラーもでない状況で、画面に何も出ません。 ApacheのORACLEに関する環境設定が必要なのでしょうか? 環境は、Windows XP      Active Perl 5.8.7.813        DBI 1.602 ,DBD-Oracle 1.17      Apache 2.0.54 どなたか、わかる方いらっしゃいますでしょうか? この件で2日悩んでおります。 宜しくお願いします。

    • ベストアンサー
    • Perl
  • ssl(apache2)

    ---環境--- OS:Vine Linux4.0 サーバソフト:Apache/2.2.3 ---------- 上記のような環境でサーバを構築しようと考えています。 現在のところ、通常のWebページ/PHP/CGIの動作確認までできたのですが、SSLの設定が上手くいきません。 私が参考にさせていただいているページ(http://vine.1-max.net/)の通り、サーバの公開鍵/秘密鍵・公開鍵の認証(自己証明)までは終了したのですが、Apacheの再起動を行ってもHTTPS接続ができません。 そこで、外部のポートスキャンを利用したのですが、SSLのポートに利用している443が開いていないようなのです。 ルータにはきちんと443への開放を行うように設定しています。 なので、後はSSL(or Apache)の設定ミスだと思われるのですが、これ以上のことがわかりません。 そこで、何かヒント(もしくはWebページ)等を教えてくださいますようお願いいたします。

  • PHPのApacheモジュール版とCGI版の違い

    タイトルのとおりなのですが、PHPのApacheモジュール版とCGI版ってなにが違うのでしょうか? 今はモジュール版でしか構築したことないのですが、仕事の都合でCGI版で構築しなくてはいけません。 プログラムを書く上で、違う点がありましたら教えてください。 #!/usr/local/perlみたいなものもいるのかな?

    • ベストアンサー
    • PHP

専門家に質問してみよう