Heim > Artikel > Backend-Entwicklung > Installieren Sie Apache unter Linux, um das Installationsmodul anzugeben und nach der Installation andere Module zu kompilieren und zu laden
1. Installieren Sie das mod_proxy-Modul bei der Installation von Apache
1. Laden Sie Apache herunter
Ich habe httpd-2.2.12.tar.bz2 heruntergeladen und unter /home/sxs/software gespeichert.
2. Entpacken Sie die Apache-Datei.
Geben Sie den Ordner /home/sxs/software ein und führen Sie Folgendes aus:
# tar -xjf httpd-2.2.12.tar.bz2
Ein httpd-2.2 wird unter /home/sxs/software generiert . 12 Ordner.
Wenn das Suffix der heruntergeladenen Datei tar.gz ist, müssen Sie den folgenden Befehl verwenden
# tar -xzf httpd-2.2.12.tar.gz
3. Legen Sie das Installationsverzeichnis und die Parameter fest
Geben Sie das neu dekomprimierte httpd ein -2.2.12-Ordner, Ausführung:
# ./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=proxy
(Im Allgemeinen im Internet ./configure --prefix=/usr/local/apache, hier ist die angegebene Installation des mod_proxy-Moduls. Es ist Es ist nicht klar, wie andere Module angegeben werden sollen, aber nach dem zweiten Teil können Sie Module hinzufügen.
Apache kompilieren und bereitstellen
# make WITH_PROXY_MODULES=yes //(网上文章一般都是直接:make) # make install
5 Sehen Sie sich den Apache-Ordner in /usr/local an und öffnen Sie die Datei httpd.conf. Sie können Folgendes sehen:
LoadModule proxy_module modules/mod_proxy.so
und andere Codes, und Sie können auch die entsprechende mod_proxy.so-Datei im Modulordner sehen.
Standardmäßig werden bei der Apache-Installation unter Linux mod_proxy und andere Module nicht installiert.
2. Nach der Installation von Apache andere Module kompilieren und laden
Gehen Sie davon aus, dass Sie mod_rewrite.so jetzt kompilieren und laden müssen
1 Geben Sie das dekomprimierte Apache-Verzeichnis ein Der erste Teil ist /home /sxs/software/httpd-2.2.12
2. Suchen Sie die zu kompilierende Datei
# find ./ -name mod_rewrite.c
3. Geben Sie das Verzeichnis ein, in dem sich mod_rewrite.c befindet
# cd modules/mappers
4 .Kompilieren Sie mod_rewrite.c
# /usr/local/apache/bin/apxs -c mod_rewrite.c
5. Installieren Sie das mod_rewrite-Modul
# /usr/local/apache/bin/apxs -ian rewrite mod_rewrite.la
Hinweis: Die beiden oben genannten Schritte 4 und 5 können auch kombiniert werden in einem Schritt
# /usr/local/apache/bin/apxs -iac mod_rewrite.c
Hinweis:
apxs ist ein Tool zum Kompilieren und Installieren von Erweiterungsmodulen für den Apache HTTP-Server. Es wird verwendet, um ein oder mehrere Quellprogramme oder Objektcodedateien in dynamische Shared-Dateien zu kompilieren Objekte, sodass sie mit der von mod_so bereitgestellten LoadModule-Anweisung zur Laufzeit in den Apache-Server geladen werden können.
Um diesen Erweiterungsmechanismus nutzen zu können, muss Ihre Plattform daher die DSO-Funktion unterstützen und Apache httpd muss über das integrierte mod_so-Modul verfügen.
Das apxs-Tool kann automatisch erkennen, ob solche Bedingungen erfüllt sind. Sie können diesen Befehl auch verwenden, um manuell zu erkennen:
$ httpd -l
Das Modul mod_so sollte in der Ausgabeliste dieses Befehls enthalten sein. Wenn alle diese Bedingungen erfüllt sind, können Sie mit Hilfe von apxs ganz einfach Ihr eigenes DSO-Modul installieren, um die Funktionalität des Apache-Servers zu erweitern:
$ apxs -i -a -c mod_foo.c gcc -fpic -DSHARED_MODULE -I/path/to/apache/include -c mod_foo.c ld -Bshareable -o mod_foo.so mod_foo.o cp mod_foo.so /path/to/apache/modules/mod_foo.so chmod 755 /path/to/apache/modules/mod_foo.so [activating module 'foo' in /path/to/apache/etc/httpd.conf] $ apachectl restart /path/to/apache/sbin/apachectl restart: httpd not running, trying to start [Tue Mar 31 11:27:55 1998] [debug] mod_so.c(303): loaded module foo_module /path/to/apache/sbin/apachectl restart: httpd started $ _
Die Parameterdateien können beliebige C-Quellprogrammdateien (. c), eine Objektcodedatei (.o) oder sogar eine Bibliothek (.a). Das Tool apxs kompiliert automatisch C-Quellprogramme oder verknüpft Objektcodes und Bibliotheken basierend auf ihren Suffixen. Bei der Verwendung von vorkompilierten Objektcodes müssen Sie jedoch darauf achten, dass es sich um adressunabhängigen Code (PIC) handelt, damit er dynamisch geladen werden kann. Wenn Sie GCC zum Kompilieren verwenden, sollten Sie den Parameter -fpic verwenden. Wenn Sie andere C-Compiler verwenden, sollten Sie dessen Handbuch konsultieren und die entsprechenden Kompilierungsparameter für Apxs verwenden.