Frank Stabenau: Apache: server-info ?

Hi Leute,

ich versuche schon ne ganze weile mir meine Server Infos vom Apache anzeigen zu lassen. Ich möchte gern sehen, welche Module geladen werden.

In der httpd.conf hab ich folgendes eingestellt:

<Location /server-info>
    SetHandler server-info
    Order deny,allow
    Deny from all
    Allow from localhost
</Location>

Allerdings steht da, das mod_info.c geladen sein muß. Aber wenn ich den Apache mit -l starte, steht mod_info.c nicht mit in der Liste.

Kann mir bitte einer sagen, wo ich was reinschreiben muß, damit es die mod_info.c läd, oder das die ganze Sache mit der server-info funktionert?

Danke
Frank

  1. hi,
    würde mal ein Php Programm schreiben!

    <?
    phpinfo();
    ?>

    und das dann starten!  :-)

  2. hallo Frank,

    du hast nahezu exakt dieselbe Frage gestern bereits gestellt und bist bereits auf die Lösung hingewiesen worden.

    ich versuche schon ne ganze weile mir meine Server Infos vom Apache anzeigen zu lassen. Ich möchte gern sehen, welche Module geladen werden.

    Dazu bist du bereits auf dem richtigen Weg  -  nur hat das mit PHP nur sehr bedingt zu tun, was dir auch bereits gesagt worden ist.

    <Location /server-info>
        SetHandler server-info
        Order deny,allow
        Deny from all
        Allow from localhost
    </Location>

    Das sollte dir eigentlich die Modulliste ausgeben. mod_info sollte dabei ungefähr so aufgelistet werden:
    Module Name: mod_info.c
    Content handlers: yes
    Configuration Phase Participation: Create Server Config, Merge Server Configs
    Request Phase Participation: none
    Module Directives:
    AddModuleInfo - a module name and additional information on that module
    Current Configuration:

    Allerdings steht da, das mod_info.c geladen sein muß. Aber wenn ich den Apache mit -l starte, steht mod_info.c nicht mit in der Liste.

    Das macht nichts. gib mal "apache -?" ein, ukm dich zu informieren, was du mit "apache -l" angezeigt bekommst: " -l : list compiled in modules"  -  also nur die statisch eingebundenen Module. mod_info gehört "default" tatsächlich nicht dazu, und du hast dir offensichtlich deinen Apache nicht selbst kompiliert. Du mußt also die Modulliste für die dynamisch dazugebundenen Module in der httpd.conf entsprechend zusammenstellen, dort muß
      LoadModule info_module modules/mod_info.so
    aktiviert sein, was es default _nicht_ ist.

    Bei beiden Nachfragen, gestern und heute, hast du weder dein Betriebssystem noch die Apache-Version angegeben. Das solltest du bei solchen Fragen aber immer tun, weil es gerade im Umgang mit der Modulliste einige Unterschiede geben kann, und wenn es dir um die _Grundlagen_ deines Servers geht, wählst du künftig bitte auch die passende Rubrik, da das, wie bereits ausgeführt, mit PHP so gut wie noch gar nichts zu tun hat.

    Grüße aus Berlin

    Christoph S.

    1. Hallo Christoph,

      danke für die ausführlich Antwort.

      Du hast recht, ich habe vergessen anzugeben, dass der Apache 1.3.6 auf Win2000 läuft. Und nach einer passenderen Rubrik hatte ich auch geschaut, aber nix gefunden oder übersehen. sorry

      LoadModule info_module modules/mod_info.so

      Die Endung .so ist so wie ich annehme Linux. Ich habe in meinem Modules-Verzeichnis nur DLLs.

      Ich habe in der httpd.conf das Modul ApacheModuleStatus.dll aktiviert und ich kann mir den Status auch anzeigen lassen.

      Ich weiss nun nicht ob es auch eine ApacheModuleInfo.dll geben muß, damit server-info funktioniert? Deswegen dachte ich, es liegt in meinem Fall an der mod_info.c.

      Grüße
      Frank

      1. hallo,

        Du hast recht, ich habe vergessen anzugeben, dass der Apache 1.3.6 auf Win2000 läuft.

        Dann wird es für dich höchste Zeit, auf Apache 2.0.47 aufzurüsten. 1.3.6 ist erheblich zu alt und für den gemeinsamen Einsatz mit PHP _nicht_ geeignet.

        LoadModule info_module modules/mod_info.so
        Die Endung .so ist so wie ich annehme Linux.

        "so" steht für "shared object" und ist seit Apache 1.3.13 Standard.

        Ich habe in der httpd.conf das Modul ApacheModuleStatus.dll aktiviert und ich kann mir den Status auch anzeigen lassen.

        server-status ist etwas anderes als server-info.

        Grüße aus Berlin

        Christoph S.