Michael Schröpl: Apache konfigurieren

Beitrag lesen

Hi Andreas,

Jetzt weiß ich nur nicht, was ich bei configure sinnvollerweise angeben sollte(Apache 2).

das, was Du brauchst. ;-)

Bei Apache 2 kann ich auch nur raten, an vielen Stellen. Also: Auf geht's ...

Ich brauche den Apache nur für ein PHP-Projekt, der Apache soll halt möglichst sicher und performant laufen. Außerdem will ich mod_ssl, mod_rewrite, http_auth, libphp(PHP als Modul), mod_gzip und access-logs verwenden. Vermutlich sollte der Apache so schlank wie möglich sein.

"schlank" und "mod_rewrite" unter einen Hut zu bekommen ist ein echtes Kunststück. "mod_rewrite" ist bei Apache 1.3 das größte Einzelmodul nach Code-Datei-Umfang (vor mod_include, glaube ich mich zu erinnern); brauchst Du das _wirklich_?

Und mod_gzip für Apache 2 ... hm.

--enable-isapi

Hoppla?

--enable-file-cache
--enable-cache
--enable-disk-cache
--enable-mem-cache

Ich wollte, ich könnte zu den ganzen Apache-2-cache-Modulen schon etwas sagen ... das ist jedenfalls (alles?) Performance-Tuning, nicht Funktionalität.

--disable-include

Kluge Entscheidung. ;-)

--enable-deflate

Das jetzt also doch? Oben las es sich noch anders ... für Apache 2 ist das aber wahrscheinlich kein großer Unterschied.

--enable-mime-magic

Wofür brauchst Du diese Kristallkugel?

--enable-expires
--enable-headers

Beides sinnvoll - aber nur, wenn Du es aktiv und richtig nutzt.

--enable-unique-id

Wofür brauchst Du das?

--enable-proxy
--enable-proxy-connect
--enable-proxy-http

Wofür brauchst Du das? (Der ganze Proxy-Kram ist auch nicht wirklich klein, glaube ich.)

--enable-ssl

Das dürfte auch nicht ganz klein sein - aber Du brauchst es ja.

--enable-http

Hoppla - das sagt mir gerade mal gar nichts ...

--enable-info

Klingt nach mod_info - wofür?

--enable-cgi

Ich habe kein CGI in Deiner Aufgabenstellung gefunden ...

--enable-vhost-alias

Brauchst Du das?

--enable-speling

Oh - die Kristallkugel, die an den URLs herumprobiert, um 404er zu vertuschen. Willst Du das wirklich?

--enable-rewrite

Nun gut ...

--enable-so

Wozu brauchst Du mod_so, wenn Du doch beim Übersetzen einen maßgeschneiderten Apache zusammenbaust?

#--with-z=DIR

Ist da für die zlib? Wenn Du mod_deflate verwenden willst - das nutzt die zlib, die haben nichts Eigenes geschrieben (anders als mod_gzip).

Jetzt steht nichts im Verzeichnis /modules

Wozu auch? Ich dachte, Du willst alles statisch zu einem "httpd" zusammenbinden und fertig.

Und muß ich ein Verzeichnis für SSL und zlib angeben?

Ich denke, ja (beides).

zlib finde ich aber nicht, wie finde ich das auf meinem Rechner?

Hm ... wo sind denn die anderen C-Standardbibliotheken installiert? (/usr/local/lib?)
Geh doch mal mit einem "find / -name libz.a -ls" über die ganze Platte danach suchen ...

Woher weiß ich wo das liegt? Es ist doch garantiert irgendwo bei Redhat Linux 8 standardmäßig dabei.

Hat RedHat eine Funktion, um installierte Pakete anzuzeigen?

Sind die Module denn in den Sourcen alle drin? Denn da finde ich die irgendwie nicht.

Ich verstehe das Apache2-Zusammenbauen noch nicht. Aber bei Apache 1.3 verwende ich mod_so nicht und habe deshalb auch keine *.so-Module herum liegen - ich habe in "bin/httpd" alles drin, was ich brauche.

Und was ist mit MPM, sollte ich das ändern?

Das ist etwas, was Du gründlich lesen solltest, bevor Du es änderst ... das ist wohl eine Wissenschaft für sich.

Sollte ich noch weitere Parameter mit einbinden, oder welche von den obigen ausschließen?

Wenn Du wirklich nur fünf Module brauchst, dann brauchst Du auch nur diese einzubinden.
(Du kannst übrigens mit "httpd -l" nachsehen, was tatsächlich alles eingebunden ist.)

/root/httpd-2.0.44/modules/arch/win32/mod_isapi.c:1322: undefined reference to
`SetLastError'

Da scheint der Linker eine Referenz zu einem Symbol nicht auflösen zu können - wahrscheinlich fehlt irgendwas, das vorher bereits installiert sein muß.

collect2: ld returned 1 exit status
make[1]: *** [httpd] Fehler 1

Brachst Du das ISAPI-Zeug - und wenn ja, wofür? (Das ist doch diese Micro$oft-IIS-Emulation, oder?)

Finde das ganze leider nirgendwo dokumentiert.

(http://httpd.apache.org/docs-2.0/mod/) Buch macht kluch.
Außerdem müßte die Datei "INSTALL" immer noch mit ausgeliefert werden, denke ich mal ...

kann ich das ja später einfach in ein bash-Script schreiben, und dann kann ich mir einfach meine eigene "Installationsroutine" schreiben.

Genau so mache ich das auch.

Viele Grüße
      Michael

--
T'Pol: I apologize if I acted inappropriately.
V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.