mod_injection installieren

Hallo,

weiß jemand wie man mod_injection auf einen Debian 64bit Server installiert?

Diese Datei ist der Schlüssel: http://oceanfight.halle17.de/download/mod_injection.so

runterlanden und nach "/usr/lib/apache2/modules" kopieren.
Dann unter "/etc/apache2/mods-available" eine neue Datei namens "injection.load" erstellen mit folgendem Inhalt:
Code:
LoadModule injection_module /usr/lib/apache2/modules/mod_injection.so


In der shell folgenden Befehl ausführen "a2enmod injection" danach den Apache neustarten und fertig.

Das hab ich bis jetzt gefunden, nur damit kann ich nichts anfangen, da es für 32Bit ist.

Restarting web server: apache2We failed to correctly shutdown apache, so we're now killing all running apa che processes. This is almost certainly suboptimal, so please make sure your system is working as you'd ex pect now! (warning).
... waiting apache2: Syntax error on line 281 of /etc/apache2/apache2.conf: Syntax error on line 1 of /et c/apache2/mods-enabled/injection.load: Cannot load /usr/lib/apache2/modules/mod_injection.so into server: /usr/lib/apache2/modules/mod_injection.so: wrong ELF class: ELFCLASS32
failed!


Viele Grüße
NevaKee
 
Na ja, du brauchst schon den Quelltext. Unter 64bit sollte auch apxs funktionieren. So wie es aussieht, hat der Autor die Entwicklung 2003 eingestellt. Das Modul wurde ursprünglich für die Version 2.0 entwickelt, ob es sich unter 2.2 anstandslos kompilieren lässt, musst du mal ausprobieren.
 
Das hab ich auch schon probiert, aber ich bekomme immer einen Fehler.

# make APXS=/usr/bin/apxs2
(\
cd build; \
/usr/bin/apxs2 -g -n injection; \
rm injection/mod_injection.c; \
(cd injection && ln -s ../../src/mod_injection.c .); \
)
Creating [DIR] injection
Creating [FILE] injection/Makefile
Creating [FILE] injection/modules.mk
Creating [FILE] injection/mod_injection.c
Creating [FILE] injection/.deps
(cd build/injection && make APXS=/usr/bin/apxs2 all)
make[1]: Entering directory `/opt/mod_injection-0.3.1/build/injection'
/usr/share/apr-1.0/build/libtool --silent --mode=compile x86_64-linux-gnu-gcc -DLINUX=2 -D_GNU_SOURCE -D_REENTRANT -I/usr/include/apr-1.0 -I/usr/include/mysql -I/usr/include/openssl -I/usr/include/postgresql -I/usr/include/xmltok -pthread -DLINUX=2 -D_GNU_SOURCE -D_REENTRANT -I/usr/include/apache2 -I. -I/usr/include/apr-1.0 -I/usr/include/mysql -I/usr/include/postgresql -I/usr/include/apache2 -I. -I/usr/include/apr-1.0 -I/usr/include/postgresql -I/usr/include/mysql -prefer-pic -c mod_injection.c && touch mod_injection.slo
mod_injection.c: In function 'injection_filter':
mod_injection.c:255: error: 'FNM_PATHNAME' undeclared (first use in this function)
mod_injection.c:255: error: (Each undeclared identifier is reported only once
mod_injection.c:255: error: for each function it appears in.)
mod_injection.c:278: error: expected ';' before '{' token
make[1]: *** [mod_injection.slo] Fehler 1
make[1]: Leaving directory `/opt/mod_injection-0.3.1/build/injection'
make: *** [all] Fehler 2
 
Dann kommt er Fehler:

# make APXS=/usr/bin/apxs2
(\
cd build; \
/usr/bin/apxs2 -g -n injection; \
rm injection/mod_injection.c; \
(cd injection && ln -s ../../src/mod_injection.c .); \
)
Creating [DIR] injection
Creating [FILE] injection/Makefile
Creating [FILE] injection/modules.mk
Creating [FILE] injection/mod_injection.c
Creating [FILE] injection/.deps
(cd build/injection && make APXS=/usr/bin/apxs2 all)
make[1]: Entering directory `/opt/mod_injection-0.3.1/build/injection'
/usr/share/apr-1.0/build/libtool --silent --mode=compile x86_64-linux-gnu-gcc -DLINUX=2 -D_GNU_SOURCE -D_REENTRANT -I/usr/include/apr-1.0 -I/usr/include/mysql -I/usr/include/openssl -I/usr/include/postgresql -I/usr/include/xmltok -pthread -DLINUX=2 -D_GNU_SOURCE -D_REENTRANT -I/usr/include/apache2 -I. -I/usr/include/apr-1.0 -I/usr/include/mysql -I/usr/include/postgresql -I/usr/include/apache2 -I. -I/usr/include/apr-1.0 -I/usr/include/postgresql -I/usr/include/mysql -prefer-pic -c mod_injection.c && touch mod_injection.slo
mod_injection.c: In function 'injection_filter':
mod_injection.c:278: error: expected ';' before '{' token
make[1]: *** [mod_injection.slo] Fehler 1
make[1]: Leaving directory `/opt/mod_injection-0.3.1/build/injection'
make: *** [all] Fehler 2
 
mod_injection.c:278:

Das Makro APR_BRIGADE_FOREACH wurde 2003 aus dem apr trunk branch entfernt, seit 2002 war es deprecated. Die Schleife müsstest du also selber einbauen, statt auf APR zurückzugreifen.

In der apr_buckets.h stand als Alternative:
Code:
for (e = APR_BRIGADE_FIRST(b); e != APR_BRIGADE_SENTINEL(b);
    e = APR_BUCKET_NEXT(e)) {
    ...
    }

Allerdings dürfte die Modulentwicklung den Rahmen dieses Forums doch sprengen.
 
Back
Top