perlを使うにはapache?or httpd?

このQ&Aのポイント
  • 現在、ローカルにapacheを入れてwordpress(サイト制作)の勉強をしています。Perlを使えるようにしたいと思い、perlを使っている友人に相談しました。すると、httpdをインストールするように言われインストールしましたが、ポート番号が塞がっているためhttpdを起動できません。
  • ググった結果、apacheの設定を変更することで、apacheでperlを動かすことができることを知りました。解決方法としては、httpdで使用するポート番号を変更するか、apacheの設定を変更してperlを使えるようにする方法があります。
  • wordpressを使いながら、perlも使えるようにする最もおすすめの方法を教えてください。
回答を見る
  • ベストアンサー

perlを使うにはapache?or httpd?

※ 箇条書きで現状を書きます。 ●現在、ローカルにapacheを入れてwordpress(サイト制作)の勉強をしています。     ↓ ●Perlを使えるようにしたいと思い、perlを使っている友人に相談。  すると、httpdをインストールするように言われインストールする。     ↓ ●しかし、ポート番号が塞がっているらしくhttpdを起動できない。     ↓ ●ググった調べてみると、appacheの設定をイジることで、apacheでperlを動かせられるということを   知る。     ↓ ●現在、解決方法に対する自分の認識は、[1]httpdで使うポート番号を他のものに変える   [2]apacheの設定をイジってperlを使えるようにする。 【質問】 wordpressを使いながら、perlも使えるようにする最もおススメの方法を教えて下さい。 (※wordpress上でperlを書くという意味ではありません。wordpressで作ったサイトを開く時もあれば、perlで書かれたサイトを開く時もあるという意味です) よろしくお願いします。

  • Perl
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
  • ralf124c
  • ベストアンサー率52% (232/446)
回答No.1

学習したいなら目標をあれやこれや欲張らずに基本から一つ一つこなしましょう プラモ作るのが得意だからといって実用的なジャンボジェット機がそのまますぐ作れるわけではありません 「ローカル」とか「サイト制作」とか記述されてますのでWindows環境だと思いますが適切なアドバイスが必要なら利用環境も記述したほうが良いと思います XPなら構築は簡単ですがVista以降はちょっと面倒な場合があります お手軽に構築する手段としては、今まで入れた単体のapacheとか全部取っ払って「xampp」をひとつ入れれば必要な環境は整うでしょう ただし、perlにこだわりがあってActivePerlでないとやだって人は、xamppの古いバージョンのxampplite + ActivePerl + lnhdr-1.52-x86.msiがお勧め インストールや使い方はそれぞれの説明サイトをしっかり読んでください また、これで構築できても理解できてることにはならないことに注意してください 認識されている部分で、多分早とちりされていると思われるところを指摘します > ●Perlを使えるようにしたいと思い、perlを使っている友人に相談。 >  すると、httpdをインストールするように言われインストールする。 まずはWebサーバ環境を用意しろという意味だと思います 今あるものとは別にという意味ではないと思います Webサーバにも確かに種類はありますがここで言ってるhttpdというのはApache2だと思います もちろんCERNのhttpdという可能性も有ります。 どちらにしても学習用なら特殊な事情がない限りWebサーバはひとつあれば充分です > ●しかし、ポート番号が塞がっているらしくhttpdを起動できない。 なにも設定チューニングをせずに使おうとするとデフォルトでポート80が指定されてるから後から動かしたほうがエラーになります ひとつの便所を複数人で使おうとするようなもんです ひとつのWebサーバで設定により複数のポート番号を使うことも条件付(勝手に使っちゃいけない番号がある)で可能です。 ところでポートってなにか知ってますか? Well known portとか。もし知らなければまずはTCP/IPの基本からはじめましょう。 > ●ググった調べてみると、appacheの設定をイジることで、apacheでperlを動かせられるということを知る。 ただ、Webサーバの設定をいじっても動かせるとは限りません それと、apacheが動かすんじゃなくて、apacheがcgiを通してOSにwebクライアント権限でプログラムを動かすようにオーダーを出すだけで、条件が整ってれば動作するしそうじゃなければ拒否されます システムのプログラムですからperlだろうがC言語(コンパイル要)だろうが、標準入出力を持ったOSの下で動作するプログラム言語なら何でも良いのです > ●現在、解決方法に対する自分の認識は、[1]httpdで使うポート番号を他のものに変える   [2]apacheの設定をイジってperlを使えるようにする。 ポート番号は何の関係もありませんし解決策にもなりません apacheの設定も必要だがperlのシェバング指定(1行目)のパスと実際にインストールされているperlのパスをそろえることが大事 基本的なことですが「ファイル(通常:テキスト・通常:バイナリ・ディレクトリ・キャラクタ型デバイス・ブロック型デバイス)」「パス」「環境変数」「リンク(特にシンボリックリンク)」ってなにかがわかっていないと自力では障害対応は困難です 本格的に勉強するなら古いPCなんかにLinuxやBSDでサーバ立ち上げて室内にLANを組みapacheなんかはtarボールから試行錯誤してインストールしたほうがよっぽど勉強になると思います

daaaago
質問者

お礼

詳しいご回答ありがとうございます。 perlは勉強するために導入したいのではないんです。 今回、お書きくださった内容を拝見し、自分が今後何を学ばなければいけないのかが分かりました。少しずつ、データベースについての理解も深めていきたいと思いました。 改めてお礼申し上げます。

関連するQ&A

  • Apacheのhttpd.confの設定方法がわかりません

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

    • ベストアンサー
    • Perl
  • プリインストール済みのApacheにmod_perlのインストール

    当方、RedHatLinuxを利用しています。 インストール済みのApacheに、 mod_perlをインストールし、PerlからPostgreSQLにアクセスしようとしています。 このとき、httpd.confに設定情報を記述しなければならないハズですが、 どうやらmod_perlをインストールしなければならないことが分かりました。 しかし、どれをとってみても、 Apacheのソースをコンパイルする時に設定する情報しか得ることができませんでした。 大変申し訳ないのですが、 プリインストール済みのApacheにmod_perlをインストールすることはできるのでしょうか?

  • Perl AN HTTPD

    PerlをApacheで試すには、ttp://localhost/でやっています。しかし、ウイルスソフトを入れた場合併用できませんでした。そこで、ポートをつついて・・・とアドバイスを受けました。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=1265431 AN HTTPDを行った場合Windows用の Perlを入手してインストールする必要がありますと、見つけました。どうして、必要があるのでしょうか?現時点でもWindows内(オフライン)で動作を確認しているはずですが・・この質問はウイルス対策のトピックと大きくづれると思いこちらに書かして頂きました。お願いします。

    • ベストアンサー
    • Perl
  • httpdが起動しません (apache)

    はじめまして、yoshiと申します。(LINUX初心者です) apacheをインストールしてhttpdの起動を試みたのですが、[失敗]とでました。 httpd.confも設定しなおしたのですが、ダメでした。 使っているOSはFedora4です。 どなたか知っている人がいましたらご協力お願いします。

  • PHPとApacheの連携で、困ってます。httpd.confどこにあるのでしょう?

    PHPの設定をしました。Apacheのインストールもしました。PHPとApacheの連携を行う必要があるのですが、Apacheの設定ファイルであるhttpd.confを編集する必要があり、「%APACHE\HOME%/conf」フォルダのhttpd.confを変更しなければならないのですが、httpd.confと、「%APACHE\HOME%/conf」フォルダがどこにあるかわかりません。わかる方教えてください。大変困っています。よろしくお願いします。

    • ベストアンサー
    • PHP
  • An HTTPdでPerlを動かす

    An HTTPdとPerlでCGIを動かそうと思います。 PerlをD:\usr\binに、An HTTPdをD:\Httpdにインストールしました。 ドキュメントルートをD:\html_publicに設定しました。D:\html_publicにindex.htmlを置き、IEでhttp://127.0.0.1/とするとindex.htmlが表示されました。 続いてhello.cgiをD:\html_publicに置き、http://127.0.0.1/hello.cgiとしました。すると「Internet Explorer ではこのページは表示できません」との表示がでました。 Perlが認識されないのであれば、hello.cgiのコードが表示されるものではないでしょうか。 あるいはAn HTTPdでは指定された拡張子以外は認識されないのかもしれないと思い直しても、一応CGIに関しては、 .pl,.cgi D:\usr\bin\perl.exe で定義しています。 設定のどこに間違いがあるのでしょう。

    • ベストアンサー
    • CGI
  • apache/mod_perlの実行エラーについて

    apacheについて質問です。分かる方、どうぞご教授下さい。 httpd.confにmod_perlの設定を記述しない場合、通常どおりapacheが起動するのですが、以下のようにmod_perlの設定を追記するとapacheがエラーで起動しません。 【mod_perlの設定】 PerlModule ModPerl::Registry PerlRequire /usr/lib/perl5/site_perl/5.8.8/startup.pl <Location /cgi-bin> SetHandler perl-script PerlResponseHandler ModPerl::Registry PerlSendHeader On Options ExecCGI </Location> 【apacheのエラー内容】 /usr/local/apache2/bin/httpd: symbol lookup error: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/Apache2/ServerUtil/ServerUtil.so: undefined symbol: ap_get_server_banner httpd.confのmod_perlの設定については、他のサーバーでは問題なく起動していますので、mod_perlのconfigure時の共有ライブラリの設定に不備があるのではと思っているのですがどう設定すればいいのか分かりません。mod_perlのconfigure時のオプションは以下のようになっています。 【mod_perlのconfigure】 perl Makefile.PL \ > MP_USE_STATIC=1 \ > MP_AP_PREFIX=../httpd-2.0.63 \ > MP_AP_CONFIGURE="--prefix=/usr/local/apache2 --with-mpm=prefork" 以下、grep の実行結果です。 [root@colinux mod_perl-2.0.3]# grep -r ap_get_server_banner /usr/lib/* バイナリー・ファイル/usr/lib/httpd/modules/mod_rewrite.soは一致しました バイナリー・ファイル/usr/lib/httpd/modules/mod_proxy_connect.soは一致しました バイナリー・ファイル/usr/lib/httpd/modules/mod_proxy_ftp.soは一致しました どんな些細なことでも結構ですので、どうかご教授のほど宜しくお願い致します。 【環境】 fedora6 apache2.0.63 mod_perl2.0.4

  • windows7へapache導入

    当方、超初心者です。 windows7、32bitにapache2.2をインストールしました。 多くのwindowsのapacheのhttpd.confの書き換えの サイトには パスの区切り記号に「/」を使っていますが、 これは「\」に置き換えなくては動かないんじゃないでしょうか? なぜwindows でapacheで「/」を使った説明をしてるか意味が分かりません。 同じくCGIの冒頭の#!C:/perl/bin/perlという欄は#!C:\perl\bin\perl と置き換えるべきなのしょうか?

  • Apacheでhttpd-ssl.confエラー

    当方、windows7 32bitでwwwサーバを組んでいる超初心者です。 apacheは2.2.25、Active Perlは5.16.3.1で OpenSSLは1_0_1です。、 c/apache softoware Foundation c/perl c/openssl 以上の場所にインストールしています。 http://tako.jugem.cc/?eid=719 ここのサイトの説明通りにやりました。但し、openssl.cfg は c/apache softoware Foundation/apache2.2/conf/sslに入れましたが。 上記のサイトで > openssl req -config openssl.cfg -new -out ./ssl.key/server.csr 色々聞かれるので埋める とあり、色々埋めました。 Apacheのhttpd.confの変更、 httpd-ssl.confの変更も行いました。↓ SSLCertificateFile "C:/Apache Software Foundation/Apache2.2/conf/ssl/server.crt" SSLCertificateKeyFile "C:/Apache Software Foundation/Apache2.2/conf/ssl/server.key" と変更しました。 server.crtファイルも server.keyファイルも上記の場所にあるのですが、 これでapacheを起動すると The requested operation has faild! とエラーメッセージが出てしまいます。 httpd-ssl.confを有効にしなければ、apacheは普通に動いてくれます。 何が足りないのか、私には解りません。 考えうるエラーの原因が思い当たったらご教授願います。

  • Apacheのディレクトリインデックスの設定方法

    WordPressでHPを作成しようと思いたち、MySQLやPHP、Apacheをインストール・設定していたのですが http://www.adminweb.jp/apache/docroot/index2.html (Admin Web様のサイト) 上記HPに記載されているとおりに、ディレクトリインデックスについて学んでいたのですが hello.htmlをC:\Apache24\htdocs上に置き、httpd.confのディレクトリインデックスの部分を何度書き換えてもindex.htmlしか参照されず、困っています 試しに他にもhtmlを作ってみたのですが、結局意味はなく・・・ これができないために、WordPressのインストールも先に進めることができず、どうしていいかわかりません どうすればindex.html以外を表示できるようになるでしょうか?