• ベストアンサー
  • 暇なときにでも

apache2のモジュール

apache2のソースを入手してインストールして実行しましたが、 /usr/local/apache2/modules の中身はhttpd.expしかありません。 なのでhttpc.confのLoadModule~というのを20行ぐらいコメントアウトしました。 これは普通じゃない状態だと思います。 apache2の./configureの引数がよくなかったのでしょうか?

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数183
  • ありがとう数2

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

  • ベストアンサー
  • 回答No.1
  • entree
  • ベストアンサー率55% (405/735)

そのような状態はありえます。 $ /usr/local/apache2/bin/httpd -l と実行してみてください。組み込まれているモジュールの一覧が表示されると思います。 モジュールの組み込み方法は「静的」と「動的 (DSO)」の2種類があります。 「静的」とは httpd ファイルそのものにモジュールを組み込む方式です。apache が起動時に自動的に組み込まれるため、httpd.conf ファイルに LoadModule を設定する必要はありません。長所はパフォーマンス的に有利なこと、短所は不要なモジュールを取り除くためには際コンパイルが必要なことです。 「動的 (DSO)」とは起動時に動的に組み込むモジュールです。コンパイルされたモジュールは /usr/local/apache2/modules ディレクトリにインストールされます。長所は LoadModule の設定により付け外しができること、短所はパフォーマンス的に若干不利なことです。 ./configure オプションで何も指定しなかった場合、標準的なモジュールが「静的」にインストールされます。 「動的」にインストールしたい場合は、動的にインストールしたいモジュールに対して、--enable-mods-shared オプションを以下のように設定します。 "--enable-mods-shared=alias userdir autoindex" (alias, userdir, autoindexモジュールが動的にインストールされる) --enable-mods-shared=most --enable-mods-shared=all (ほとんど/全てのモジュールが動的にインストールされる)

共感・感謝の気持ちを伝えよう!

質問者からのお礼

DSOをconfigureで使ったので、これでよいみたいですね。 ありがとうございました。

関連するQ&A

  • Apache2.2.4のmod_authnz_ldap

    centosにapacheの2.2.4をソースから次のconfigureオプションでインストールしたのですが、/usr/local/apache2/modules/にmod_authnz_ldap.cが追加されません。/usr/local/apache2/bin/httpd -lで確認するとmod_authnz_ldap.cとutil_ldap.cを確認する事ができるのですが。。。 ■configureオプション ./configure --enable-so --enable-authnz-ldap --with-ldap --enable-ldap /usr/local/apache2/modules/に追加されていない為、httpd.confに LoadModule authz_ldap_module modules/mod_authz_ldap.soを追記し apacheを再起動してもエラーがでてしまいます。   configureオプションに問題があるのでしょうか?

  • Vine Linux 2.15 ではApache2を動かせないのでしょうか。

    古い ノートパソコン(PentiumMMX 233Mhz メモリ64MB)にVine Linux 2.15 をインストールして学習しています。 ---------------------------------------- Vineに付属していたApache1.1は、削除方法が今ひとつ良く分からないのでそのままとし、Apache2(httpd-2.0.53.tar.gz)を解凍しインストールして共存させました。 # /usr/local/apache2/bin/apachectl  start   とすると、 (98)アドレスは既に使用中です:・・・・と出るので、Apache1.1の /etc/httpd/conf/httpd.confファイル中のポート番号を80番から8888番 に変更してrebootしました。そして、Apache2.0を起動してlocalhostにアクセスしましたが、「サーバが見付かりません」とのメッセージが出ます。 # /usr/local/apache2/bin/apachectl  stop   としてみると、 httpd (pid 1029?) not running となり、Apache2が動いていない様子です。 ----------------------------------------- # vi /usr/local/apache2/conf/httpd.conf で開いてみると、Listen80 になっています。しかし、 # netstat -ln | grep 80   とすると、 tcp 0 .00.0.0.0:5680 0.0.0.0:* LISTEN となっており、Port80は見当たりません。 # ps aux | grep http   とすると、FedoraCoreの解説本には、 [・・・・・・/usr/local/apache2/bin/httpd -k start] になると書いてありますが、 root 689 0.0 2.0 3712 1296 ? S 14:33 0 /usr/sbin/http となっています。 ------------------------------------ どこが不具合でApache2が動かないのでしょうか。どのように修正すれば良いでしょうか。 Apache2を起動できないのは、そもそも、パソコンの能力が不足しているからでしょうか? Vine Linux 2.15ではApache2を使えないのでしょうか? 何かお気づきの点があれば教えて頂ければ有難いです。よろしくお願いします。

  • apache2の削除

    環境:RedHat9 apache2.0.46 apache2を ./configure make make install の手順でインストールした後に、apache2を削除するには apache2の解凍ディレクトリ(/usr/local/src/httpd-2.0.46)と /usr/local/apache2ディレクトリーを削除するだけで良いのですか?

  • Apache2 のエラーについて

    Apache2 を、/usr/local/apache2/bin/apachectl start あるいは、/usr/local/apache2/bin/apachectl restart で、スタートさせようとすると、以下のエラーになります。 また、/usr/local/apache2/bin/apachectl stop を2回実行しても、 no pid file?といったコメントで、ブラウザからサイトへアクセスできません。 いったい、どうすればいいのでしょうか? /usr/local/apache2/bin/apachectl restart httpd not running, trying to start (48)Address already in use: could not bind to address 0.0.0.0:80 no listening sockets available, shutting down Unable to open logs

  • PHP5とApache2.2.2を選びましたが。。。

    現在、PHP5の設定で戸惑っています。 httpd.confファイルでの設定で、 LoadModule php5_module D:/php/php5apache2.dll AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps DirectoryIndex index.html index.php を追記しましたが、どうしても115行目の LoadModule php5_module D:/php/php5apache2.dll でアラーらしき症状が出てPHPが動作してくれません。 cgi,phpの動作ディレクトリは”D”で設定しています。 どなたかアドバイスの程、宜しくお願い致します。

    • ベストアンサー
    • PHP
  • Apache2 インストール後モジュール追加(proxy, proxy_ajp)

    標題の件でご教授ください。 現象としては、Apache2にモジュール(mod_proxy.soおよびmod_proxy_ajp.so)追加しようとして、mod_*.soが作成されず困っております。 なお、インストール時、configureにオプション"--enable-proxy" "--enable-proxy-ajp"を付加する方法は知っていますが、インストール後にモジュールを追加する方法を教えていただきたいです。 ■環境 OS: Red Hat Enterprise Linux 5.3 ■参考ページ 「Enjoi Blog」~apache2 にモジュールを追加する http://blog.enjoitech.jp/article/131 ■実行手順(mod_proxy.soの場合の例) 1.コンパイル。 [root@localhost proxy]# /usr/local/apache2/bin/apxs -c mod_proxy.c proxy_util.c /usr/local/apache2/build/libtool --silent --mode=compile gcc -prefer-pic -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -g -O2 -pthread -I/usr/local/apache2/include -I/usr/local/apache2/include -I/usr/local/apache2/include -c -o mod_proxy.lo mod_proxy.c && touch mod_proxy.slo /usr/local/apache2/build/libtool --silent --mode=compile gcc -prefer-pic -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -g -O2 -pthread -I/usr/local/apache2/include -I/usr/local/apache2/include -I/usr/local/apache2/include -c -o proxy_util.lo proxy_util.c && touch proxy_util.slo /usr/local/apache2/build/libtool --silent --mode=link gcc -o mod_proxy.la -rpath /usr/local/apache2/modules -module -avoid-version proxy_util.lo mod_proxy.lo 2.オブジェクトが作成されていることを確認。 [root@localhost proxy]# ls -la mod_proxy.* -rw-r--r-- 1 root root 88327 2月 1 2009 mod_proxy.c -rw-r--r-- 1 root root 4942 1月 11 2007 mod_proxy.dsp -rw-r--r-- 1 root root 32152 11月 12 2008 mod_proxy.h -rw-r--r-- 1 root root 758 10月 23 21:42 mod_proxy.la -rw-r--r-- 1 root root 303 10月 23 21:42 mod_proxy.lo -rw-r--r-- 1 root root 180184 10月 23 21:42 mod_proxy.o -rw-r--r-- 1 root root 0 10月 23 21:42 mod_proxy.slo [root@localhost proxy]# ls -la proxy_util.* -rw-r--r-- 1 root root 81086 7月 3 20:57 proxy_util.c -rw-r--r-- 1 root root 305 10月 23 21:42 proxy_util.lo -rw-r--r-- 1 root root 148440 10月 23 21:42 proxy_util.o -rw-r--r-- 1 root root 0 10月 23 21:42 proxy_util.slo 3.インストール→失敗。 [root@localhost proxy]# /usr/local/apache2/bin/apxs -ian proxy mod_proxy.la /usr/local/apache2/build/instdso.sh SH_LIBTOOL='/usr/local/apache2/build/libtool' mod_proxy.la /usr/local/apache2/modules /usr/local/apache2/build/libtool --mode=install cp mod_proxy.la /usr/local/apache2/modules/ cp .libs/mod_proxy.lai /usr/local/apache2/modules/mod_proxy.la cp .libs/mod_proxy.a /usr/local/apache2/modules/mod_proxy.a chmod 644 /usr/local/apache2/modules/mod_proxy.a ranlib /usr/local/apache2/modules/mod_proxy.a PATH="$PATH:/sbin" ldconfig -n /usr/local/apache2/modules ---------------------------------------------------------------------- Libraries have been installed in: /usr/local/apache2/modules If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify the full pathname of the library, or use the `-LLIBDIR' flag during linking and do at least one of the following: - add LIBDIR to the `LD_LIBRARY_PATH' environment variable during execution - add LIBDIR to the `LD_RUN_PATH' environment variable during linking - use the `-Wl,--rpath -Wl,LIBDIR' linker flag - have your system administrator add LIBDIR to `/etc/ld.so.conf' See any operating system documentation about shared libraries for more information, such as the ld(1) and ld.so(8) manual pages. ---------------------------------------------------------------------- Warning! dlname not found in /usr/local/apache2/modules/mod_proxy.la. Assuming installing a .so rather than a libtool archive. chmod 755 /usr/local/apache2/modules/mod_proxy.so chmod: cannot access `/usr/local/apache2/modules/mod_proxy.so': そのようなファイルやディレクトリはありません apxs:Error: Command failed with rc=65536 以上、よろしくお願いいたします。

  • Apache2が起動しなくなった!!

    はじめまして。さっそく質問なのですが、Apache2とPHP4の連動のために、Apacheのconfフォルダにあるhttpd.confの中身を設定通りいじって 「LoadModule php4_module c:/php/sapi/php4apache2.dll」←追加 「AddDefaultCharset none」←変更 「AddType application/x-httpd-php .php」←追加 そして、php.ini側では、 「doc_root = "c:/Program Files/Apache Group/Apache2/htdocs"」 「extension_dir = "c:/php/extensions"」←変更 でしましたが、その後、Apacheを再起動しようとするとエラーになって再起動ができなくなりました。 どなたか、なにか気になる点があれば教えて下さい!! お願いします。

    • ベストアンサー
    • PHP
  • Apache1.3+webdavの導入でapxsがない

    mod_davインストール時のapxsの場所が分かりません。 またソースからインストールとrpmパッケージからのインストールの 違いと、その違いによるインストール先アンインストールなどで 頭が混乱しています。 vine linux3.1 apache-1.3.33(rpmパッケージをGUIでインストール済み) mod_dav-1.0.3-1.3.6(ソース) 「参考URL」http://itoshima-ah.fku.ed.jp/linux/webdav02.htm webdavを導入すべく、上記のサイトを参考にさせてもらいました。 mod_davのインストールで $ ./configure --with-apxs=/usr/sbin/apxs とあり apxsの場所が、"/usr/sbin/apxs"でない場合もあるということなので #locate apxs とすると /usr/share/man/man8/apxs2.8.gz /usr/local/src/httpd-2.0.59/support/apxs.in /usr/local/src/httpd-2.0.59/support/apxs /usr/local/src/httpd-2.0.59/docs/man/apxs.8 /usr/local/src/httpd-2.0.59/docs/manual/programs/apxs.html.ko.euc-kr /usr/local/src/httpd-2.0.59/docs/manual/programs/apxs.html.en /usr/local/src/httpd-2.0.59/docs/manual/programs/apxs.html /usr/local/apache2/bin/apxs /usr/local/apache2/man/man8/apxs.8 /usr/local/apache2/manual/programs/apxs.html.ko.euc-kr /usr/local/apache2/manual/programs/apxs.html.en /usr/local/apache2/manual/programs/apxs.html と出て、apache2を以前ソースからインストールしていて、 apache1.3(rpm)に戻そうと /usr/local/apache2ごと削除し、パッケージでのapache1.3に入れ替え たので/usr/local/apache2ディレクトリは存在しないはずなのですが、 このようにlocateでまだ出てしまいます。なぜでしょうか? また肝心のapxsというものがどこにあるのか 分かりません。locateコマンドじゃないのでしょうか? ちなみにapache1.33をリナックスの GUIでインストールしたので自分の場合apacheのインストール先などは /usr/local/apacheではないと思います。 実際に/usr/local/apacheは存在しませんでした。 /etc/httpdはあります。 つまりしたいことは自分の環境の apxsというディレクトリがないので見つけたいという事です。   ソースからインストールだとか パッケージからインストールだとかで インストールされる先が違ったりという事に頭が テンパッていますが、どうぞご指導いただけたらと思います。

  • Apache2.2での文字化けが直せません

    Apache2.2.15をインストールし、「独習PHP」に従って設定をしたのですが、日本語が文字化けします。 httpd.confで変更したのは以下の部分です。 LoadModule php5_module "c:/php/php5apache2_2.dll" Addtype application/x-httpd-php .php (AddDefaultCharsetは、調べてみた所2.2系から使われてないらしいので、追加していません) php.iniの設定も間違いなく行いました。 また、<head>内に<meta http-equiv="Content-Type" content="text/html; charset=euc">などと埋め込んだりしてもだめでした。 どうぞよろしくお願いします。

    • ベストアンサー
    • PHP
  • Apache2.2とTomcat6.0の連携方法

    Apache2.2とTomcat6.0の連携がうまくいかず、困っています。 宜しくお願い致します。 ■問題点 ApacheとTomcatの連携の設定を行い、http://localhost/examplesを 表示させようとしましたが、[ページが見つかりません]と表示され、 ApacheとTomcatの連携が出来ません。 以下に設定した内容を記載致しました。 設定内容に不備があればご教授お願い致します。 ■Apacheの設定は以下の様にしています。 C:\Program Files\Apache Software Foundation\Apache2.2\conf 内の httpd.confを編集 (1)コメント行の有効化 #LoadModule proxy_module modules/mod_proxy.so #LoadModule proxy_ajp_module modules/mod_proxy_ajp.so 先頭の「#」を外し、有効化する。 ↓ LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_ajp_module modules/mod_proxy_ajp.so (2)文末に以下を追加する。 (Apacheへの要求を Tomcatにて処理が行われる様にする。) <Location /examples/> ProxyPass ajp://localhost:8009/examples/ </Location> <Location /examples/> ProxyPass ajp://localhost:8009/jspbook/ </Location> ■備考 1.Apache2.2インストール後、Apache2.2サーバを起動させ、 http://localhost/ が表示される事は確認出来ています。 2.Tomcat6.0インストール後、Tomcatを起動させ、 http://localhost:8080/ が表示される事は確認出来ています。 3.Apacheのバージョン:Apache2.2.6  Tomcatのバージョン:Tomcat6.0.14 宜しくお願い致します。