.titleBar { margin-bottom: 5px!important; }

[Problem] Apache auf 7320

Dieses Thema im Forum "Freetz" wurde erstellt von Morpheus19, 18 Nov. 2011.

  1. Morpheus19

    Morpheus19 Neuer User

    Registriert seit:
    18 Nov. 2011
    Beiträge:
    11
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo zusammen,

    ich versuche auf meiner FritzBox 7320 einen Apache ans Laufen zu bringen.
    Ich orientiere mich an der Beschreibung aus dem Wiki:
    http://freetz.org/wiki/packages/apache

    Die Version des Apache ist 1.3.41

    Wenn ich den Apache über apachectl starten möchte, erhalte ich die Fehlermeldung

    Code:
    [email protected]:/var/media/ftp/uStor01/apache-1.3.41# ./apache-1.3.41/bin/apachectl s
    tart
    fopen: No such file or directory
    apache: could not open document config file /apache-1.3.41/conf/apache.conf
    ./apache-1.3.41/bin/apachectl start: httpd could not be started
    Versuche ich Apache manuell zu starten und das entsprechende Conf-File selbst zuübergeben erhalte ich einen Segmentation Fault.

    Es liegt daher die Vermutung nahe, dass auch beim Starten über apachectl ein Segmentation Fault auftreten würde, sofern er das Config-File finden würde.

    Bei einer Suche im Forum habe ich heraus gefunden, das der Segmentation Fault auf ein fehlerhaftes Binary zurückzuführen ist. Ich habe das Binary einmal per FTP im binären Modus übertragen und einmal direkt über meinen Laptop das Ergebnis ist immer das selbe.

    Irgendwelche Ideen, wie ich das Problem beheben könnte?:confused:
    Vielen Dank im Voraus
     
  2. Morpheus19

    Morpheus19 Neuer User

    Registriert seit:
    18 Nov. 2011
    Beiträge:
    11
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Keiner eine Idee, wie ich das Problem lösen könnte ??
     
  3. MaxMuster

    MaxMuster IPPF-Promi

    Registriert seit:
    1 Feb. 2005
    Beiträge:
    6,932
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Hast du den Apachen selbst gebaut?
    Wenn nicht, hast du auch die Version für die 7390/7320 genommen?
    Du kannst ja mal den Apache 2.2.17 von hier testen...
     
  4. Morpheus19

    Morpheus19 Neuer User

    Registriert seit:
    18 Nov. 2011
    Beiträge:
    11
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Danke für die Antwort

    Ich habe es nun noch mal probiert und die von dir verlinkte Version funktioniert.

    Ich habe vor webdav und svn über http mit dem Apache zu realisieren.
    Die Module für webdav sind in der Version vorhanden, wenn ich richtig geguckt habe.
    Für svn über http wird dav_svn benötigt, das ist nich vorhanden.

    Gibt es schon irgendwo ein kompilierten Apache mit diesen Modulen oder muss ich dies selbst versuchen ??

    Gruß.
     
  5. Morpheus19

    Morpheus19 Neuer User

    Registriert seit:
    18 Nov. 2011
    Beiträge:
    11
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Apache kompilieren

    Ich habe jetzt mal versucht den Apache 2.21 zu compilieren nur irgendwie komme ich da nicht ganz weiter.

    Zuerst füge ich die Toolchain zum Path hinzu:
    Code:
    export PATH=/mnt/data/freetz-trunk/toolchain/target/bin/:$PATH
    Anschließend führe ich das Config-Skript aus:
    Code:
     sudo ./configure --target=mips --prefix=/usr/local/apache --enable-dav --enable-dav-fs --enable-dav-lock --enable-ssl --enable-static-htpasswd --enable-mods-shared=max
    
    Ein Teil des Configure-Output sieht dann so aus:
    Code:
    checking for chosen layout... Apache
    checking for working mkdir -p... yes
    checking build system type... x86_64-unknown-linux-gnu
    checking host system type... x86_64-unknown-linux-gnu
    checking target system type... mips-unknown-elf
    
    Configuring Apache Portable Runtime library ...
    
    checking for APR... reconfig
    configuring package in srclib/apr now
    checking build system type... x86_64-unknown-linux-gnu
    checking host system type... x86_64-unknown-linux-gnu
    checking target system type... mips-unknown-elf
    Configuring APR library
    Platform: x86_64-unknown-linux-gnu
    checking for working mkdir -p... yes
    APR Version: 1.4.5
    checking for chosen layout... apr
    checking for gcc... gcc
    checking for C compiler default output file name... a.out
    checking whether the C compiler works... yes
    checking whether we are cross compiling... no
    
    Es wird also kein Cross-Compiling durchgeführt, ich verstehe nur nicht so genau warum. Habe mich bei den Config-Optionen an diesem Post orientiert und lediglich die Toolchain von Freetz verwendet. Auch die Angabe des Host-System führt nicht dazu, dass ein Cross-Compiling durchgeführt wird.

    Für Hilfe wäre ich dankbar.
     
  6. MaxMuster

    MaxMuster IPPF-Promi

    Registriert seit:
    1 Feb. 2005
    Beiträge:
    6,932
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Ich habe den Patch im Freetz-Ticket 1110 mal auf 2.2.21 gebracht, damit kannst du direkt mit Freetz den Apache bauen ;-)

    Im Freetz-Ordner (natürlich erst den Patch dorthin laden ;-)):
    Code:
    patch -p0 < apache_2.2.21_with_proxy_html_trunk.patch
    make menuconfig 
    # hier dann Box wählen und bei den Paketen unter "Testing" 
    # Apache (statisch und mit eingebauten Modulen am besten ;-))
    # dann:
    make apache-precompiled
    
    Das Binary liegt dann vor als "packages/target-<Architektur_und_uClib>/apache-2.2.21/apache-2.2.21/usr/sbin/apache".
     
  7. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,779
    Zustimmungen:
    10
    Punkte für Erfolge:
    38
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Ich hab jetzt das Ticket nicht noch mal durch gelesen. Was ist der Grund warum das nicht im Trunk ist? Ich wäre dafür den neuen Apache zusätzliche zur alten Version aufzunehmen (apache2).

    Gruß
    Oliver
     
  8. MaxMuster

    MaxMuster IPPF-Promi

    Registriert seit:
    1 Feb. 2005
    Beiträge:
    6,932
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Ich denke das war, weil der Apache grundsätzlich nicht "so richtig" integriert ist. Das Binary ist einfach sehr groß, deshalb ist es ohne USB nicht so sinnvoll (braucht man wohl eh für einen Webserver ;-))...

    Obwohl "er13" da im Ticket für diese neue Version eine rudimentäre Einbindung gebaut hatte, mit der die wichtigsten Dinge in Image kommen können. Ich werde mal versuchen, eine "normale" 2-er Version zu bauen, ohne die "Zusätze", für die ich noch nicht so richtig weiß, wie man sie "schön" integrieren könnte...

    Jörg
     
  9. RalfFriedl

    RalfFriedl IPPF-Urgestein

    Registriert seit:
    22 Apr. 2007
    Beiträge:
    12,343
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Inzwischen haben wir ja den external Mechanismus. Und wenn jemand 16MB Flash hat, passt er vielleicht sogar da hinein.

    Jemand hat doch schon festgestellt, dass der Apache2 sogar kleiner ist als der Apache1. Es spricht aber auch nichts dagegen, beide anzubieten.
     
  10. MaxMuster

    MaxMuster IPPF-Promi

    Registriert seit:
    1 Feb. 2005
    Beiträge:
    6,932
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    #10 MaxMuster, 22 Dez. 2011
    Zuletzt bearbeitet: 23 Dez. 2011
    @Morpheus19:
    Leider funktioniert das Bauen von "apxs" mit dem Crosscompiler nicht so richtig (zumindest bei mir nicht).
    Deshalb habe ich mal "von Hand" ein Binary mit dav_svn gebaut (aus dem Subversion-Paket den Ordner mod_dav_svn in den Apache kopiert, die benötigten includes auch direkt in den Ordner und von Hand Makefiles für die Module gebaut. In Kombination mit hädischen "make" aufrufen und freetz ist dann das angehängte Binary dabei rausgekommen, was zumindest auf einer 7390 "anläuft". Ob das dav_svn funktioniert, weiß ich nicht...)


    Code:
    [email protected]:/var/tmp# ./apache_bin -l
    Compiled in modules:
      core.c
      mod_authn_file.c
      mod_authn_dbm.c
      mod_authn_anon.c
      mod_authn_dbd.c
      mod_authn_default.c
      mod_authz_host.c
      mod_authz_groupfile.c
      mod_authz_user.c
      mod_authz_dbm.c
      mod_authz_owner.c
      mod_authz_default.c
      mod_auth_basic.c
      mod_auth_digest.c
      mod_dbd.c
      mod_dumpio.c
      mod_reqtimeout.c
      mod_ext_filter.c
      mod_include.c
      mod_filter.c
      mod_substitute.c
      mod_deflate.c
      mod_log_config.c
      mod_logio.c
      mod_env.c
      mod_mime_magic.c
      mod_expires.c
      mod_headers.c
      mod_ident.c
      mod_setenvif.c
      mod_version.c
      mod_proxy.c
      mod_proxy_connect.c
      mod_proxy_ftp.c
      mod_proxy_http.c
      mod_proxy_html.c
      mod_xml2enc.c
      mod_proxy_scgi.c
      mod_proxy_ajp.c
      mod_proxy_balancer.c
      prefork.c
      http_core.c
      mod_mime.c
      mod_dav.c
      mod_status.c
      mod_autoindex.c
      mod_asis.c
      mod_info.c
      mod_cgi.c
      mod_dav_fs.c
      mod_dav_svn.c
      mod_vhost_alias.c
      mod_negotiation.c
      mod_dir.c
      mod_imagemap.c
      mod_actions.c
      mod_speling.c
      mod_userdir.c
      mod_alias.c
      mod_rewrite.c
      mod_so.c
    [email protected]:/var/tmp# ./apache_bin -v
    Server version: Apache/2.2.21 (Unix)
    Server built:   Dec 22 2011 14:40:43
    [email protected]:/var/tmp# ps | grep -e apache[_]
     3156 root      4764 S    ./apache_bin -f /tmp/apache/conf/apache.conf
     3157 nobody    4856 S    ./apache_bin -f /tmp/apache/conf/apache.conf
     3158 nobody    4856 S    ./apache_bin -f /tmp/apache/conf/apache.conf
    [email protected]:/var/tmp# 
    [email protected]:/var/tmp# telnet 192.168.178.73 8899
    GET / HTTP/1.0
    
    HTTP/1.1 403 Forbidden
    Date: Thu, 01 Jan 1970 00:19:31 GMT
    Server: Apache/2.2.21 (Unix) proxy_html/3.1.3 DAV/2 SVN/1.7.2
    Content-Length: 202
    Connection: close
    Content-Type: text/html; charset=iso-8859-1
    
    <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
    <html><head>
    <title>403 Forbidden</title>
    </head><body>
    <h1>Forbidden</h1>
    <p>You don't have permission to access /
    on this server.</p>
    </body></html>
    Connection closed by foreign host
    [email protected]:/var/tmp# 
    
    EDIT: Anhang scheint defekt, zwei Beiträge drunter ist ein neues...
     
  11. Morpheus19

    Morpheus19 Neuer User

    Registriert seit:
    18 Nov. 2011
    Beiträge:
    11
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Danke für die Hilfe,

    ich habe das Binary mal kurz ausprobiert, anlaufen tut der Apache; liefert aber keine Seiten aus.

    Die Child-Prozesse brechen mit einem Segmentation Fault ab.
    Im Error.log finden sich solche Einträge:
    Code:
    [Fri Dec 23 11:49:53 2011] [notice] child pid 22038 exit signal Segmentation fault (11) 
    Ich werde mal gucken, ob ich das Binary ans Laufen bekomme.

    Gruß
     
  12. MaxMuster

    MaxMuster IPPF-Promi

    Registriert seit:
    1 Feb. 2005
    Beiträge:
    6,932
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    #12 MaxMuster, 23 Dez. 2011
    Zuletzt bearbeitet: 23 Dez. 2011
    Hm, machte er bei mir auch. Nochmal gebaut, der zeigt Seiten an ;-)

    EDIT: Und noch der Patch mit proxy_html und dav_svn gegen den Apache2-Patch im Ticket 1110. Ist wirklich nur ein "dirty Hack", um das modul innerhalb vom Apache zu übersetzen, weil axps nicht funktioniert...
    Wenn es statisch übersetzt werden soll, muss man noch die statischen Subversion-Libraries haben und in subversion.mk einschalten:
    Code:
    --- make/subversion/subversion.mk	(revision 8274)
    +++ make/subversion/subversion.mk	(working copy)
    @@ -59,7 +59,7 @@
     $(PKG)_CONFIGURE_OPTIONS += --enable-all-static
     else
     $(PKG)_CONFIGURE_OPTIONS += --enable-shared
    -$(PKG)_CONFIGURE_OPTIONS += --disable-static
    +$(PKG)_CONFIGURE_OPTIONS += --enable-static
     endif
     $(PKG)_CONFIGURE_OPTIONS += --disable-nls
     
    
     

    Anhänge:

  13. MaxMuster

    MaxMuster IPPF-Promi

    Registriert seit:
    1 Feb. 2005
    Beiträge:
    6,932
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    ... und, geht es jetzt??
     
  14. Morpheus19

    Morpheus19 Neuer User

    Registriert seit:
    18 Nov. 2011
    Beiträge:
    11
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ja funktioniert.
    Bin erst heute dazu gekommen es zu testen.

    Vielen Dank für die Hilfe :)
     
  15. Morpheus19

    Morpheus19 Neuer User

    Registriert seit:
    18 Nov. 2011
    Beiträge:
    11
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Besteht die Möglichkeit, den Patch für das Modul dav_svn auf die aktuelle Revision zu aktualisieren?

    Habe es selbst mal versucht, funktionierte jedoch nicht so gut.

    Habe es dann mal mit der Rev 8274 versucht. Jedoch schlägt hier schon der Download des Apache fehl, keine Ahnung warum.

    Ich bedanke mich schon mal im voraus :)
     
  16. MaxMuster

    MaxMuster IPPF-Promi

    Registriert seit:
    1 Feb. 2005
    Beiträge:
    6,932
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    #16 MaxMuster, 25 Feb. 2012
    Zuletzt bearbeitet: 25 Feb. 2012
    Denn, mal ein Update auf Apache 2.4.1 mit dav_svn aus subversion 1.7.3 und proxy_html. Teste doch mal bitte.

    Das statische Binary ist mit 4,5MB nun schon recht groß geworden, mit gzip packen ging nicht mehr, weil es dann über 2MB war. Auspacken mit "7z e apache241.7z"...

    EDIT: Prinzipiell geht es wohl:
    Code:
    [email protected]:~$ telnet 192.168.178.11 8899
    Trying 192.168.178.11...
    Connected to 192.168.178.11.
    Escape character is '^]'.
    GET / HTTP/1.0
    
    HTTP/1.1 200 OK
    Date: Thu, 01 Jan 1970 00:37:40 GMT
    Server: Apache/2.4.1 (Unix) SVN/1.7.2 OpenSSL/0.9.8t
    Last-Modified: Thu, 01 Jan 1970 00:37:42 GMT
    ETag: W/"43-35d0197c8c640"
    Accept-Ranges: bytes
    Content-Length: 67
    Connection: close
    Content-Type: text/html
    
    <html><body><h1>Apache on your FRITZ!Box works!</h1></body></html>
    Connection closed by foreign host.
    [email protected]:~$ 
    
    
    
     

    Anhänge:

  17. Morpheus19

    Morpheus19 Neuer User

    Registriert seit:
    18 Nov. 2011
    Beiträge:
    11
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Danke für die schnelle Antwort.

    Das Binary funktioniert.

    Der Bauen des Binary bricht jedoch nach Einspielen des Patches mit folgender Fehlermeldung ab.

    Code:
    make[5]: *** [mod_dav_svn.la] Error 1
    make[5]: Leaving directory `/mnt/data/freetz-trunk/source/target-mips_uClibc-0.9.30.3/httpd-2.4.1/modules/dav/mod_dav_svn'
    make[4]: *** [shared-build-recursive] Error 1
    make[4]: Leaving directory `/mnt/data/freetz-trunk/source/target-mips_uClibc-0.9.30.3/httpd-2.4.1/modules/dav/mod_dav_svn'
    make[3]: *** [shared-build-recursive] Error 1
    make[3]: Leaving directory `/mnt/data/freetz-trunk/source/target-mips_uClibc-0.9.30.3/httpd-2.4.1/modules'
    make[2]: *** [shared-build-recursive] Error 1
    make[2]: Leaving directory `/mnt/data/freetz-trunk/source/target-mips_uClibc-0.9.30.3/httpd-2.4.1'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/mnt/data/freetz-trunk/source/target-mips_uClibc-0.9.30.3/httpd-2.4.1'
    
    ERROR: Build failed.
    make: *** [source/target-mips_uClibc-0.9.30.3/httpd-2.4.1/apache2] Error 1
    
     
  18. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,779
    Zustimmungen:
    10
    Punkte für Erfolge:
    38
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Kannst du bitte etwas mehr Kontext posten? Du hast die Fehlermeldung abgeschnitten...

    Gruß
    Oliver
     
  19. MaxMuster

    MaxMuster IPPF-Promi

    Registriert seit:
    1 Feb. 2005
    Beiträge:
    6,932
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Da hab ich bestimmt noch einen Fehler drin. Das Makefile, modules.mk usw für dav_svn hab ich nur zusammengestrickt, denn eigentlich werden Module per "axps" übersetzt, das hat bei mir aber nicht geklappt und deshalb habe ich versucht, das Modul direkt in Apache hinein zu operieren. Kann sein, das damit nicht alle Optionen klappen, ich habe nur "statisch und alle Module direkt drin" getestet...
     
  20. Morpheus19

    Morpheus19 Neuer User

    Registriert seit:
    18 Nov. 2011
    Beiträge:
    11
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #20 Morpheus19, 27 Feb. 2012
    Zuletzt bearbeitet: 27 Feb. 2012
    Ich habe es nun noch mal mit "statisch und alle Module direkt drin" getestet und bei mir läuft es nicht fehlerfrei durch:
    Code:
    collect2: ld returned 1 exit status
    make[3]: *** [ab] Error 1
    make[3]: Leaving directory `/mnt/data/freetz-trunk/source/target-mips_uClibc-0.9.30.3/httpd-2.4.1/support'
    make[2]: *** [all-recursive] Error 1
    make[2]: Leaving directory `/mnt/data/freetz-trunk/source/target-mips_uClibc-0.9.30.3/httpd-2.4.1/support'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/mnt/data/freetz-trunk/source/target-mips_uClibc-0.9.30.3/httpd-2.4.1'
    
    ERROR: Build failed.
    make: *** [source/target-mips_uClibc-0.9.30.3/httpd-2.4.1/apache2] Error 1
    
    Gestern habe ich es ohne "alle Module drin", und ohne SSL + Deflate getestet, da trat der folgende Fehler auf:
    Code:
    /mnt/data/freetz-trunk/toolchain/build/mips_gcc-4.5.3_uClibc-0.9.30.3/mips-linux-uclibc/usr/share/apr-1/build/libtool --silent --mode=link /mnt/data/freetz-trunk/toolchain/build/mips_gcc-4.5.3_uClibc-0.9.30.3/mips-linux-uclibc/bin/mips-linux-uclibc-gcc -std=gnu99   -march=24kc -Os -pipe -Wa,--trap -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -L/mnt/data/freetz-trunk/toolchain/build/mips_gcc-4.5.3_uClibc-0.9.30.3/mips-linux-uclibc/usr/lib  -all-static    -o mod_dav_svn.la -rpath /usr/lib/apache2 -module -avoid-version  mod_dav_svn.lo activity.lo authz.lo deadprops.lo liveprops.lo lock.lo merge.lo mirror.lo repos.lo util.lo version.lo reports/mergeinfo.lo reports/log.lo reports/get-locks.lo reports/get-location-segments.lo reports/get-locations.lo reports/file-revs.lo reports/deleted-rev.lo reports/dated-rev.lo reports/update.lo reports/replay.lo posts/create_txn.lo 
    make[5]: Leaving directory `/mnt/data/freetz-trunk/source/target-mips_uClibc-0.9.30.3/httpd-2.4.1/modules/dav/mod_dav_svn'
    make[4]: Leaving directory `/mnt/data/freetz-trunk/source/target-mips_uClibc-0.9.30.3/httpd-2.4.1/modules/dav/mod_dav_svn'
    make[3]: Leaving directory `/mnt/data/freetz-trunk/source/target-mips_uClibc-0.9.30.3/httpd-2.4.1/modules'
    make[2]: Leaving directory `/mnt/data/freetz-trunk/source/target-mips_uClibc-0.9.30.3/httpd-2.4.1'
    make[1]: Leaving directory `/mnt/data/freetz-trunk/source/target-mips_uClibc-0.9.30.3/httpd-2.4.1'
    
    ERROR: Build failed.
    
    
    EDIT
    Habe die Ausgabe angehängt.
    Ausgabe wurde mit make apache2-precompiled >> log.txt erzeugt.
    Ich selbst kann anhand der Ausgabe gar nichts erkennen. Sollten daher Informationen erneut nicht gepostet worden sein, dann nicht weil ich meine den Fehler alleine finden zu können, sondern wider besseren Wissens.
     

    Anhänge:

    • log.zip
      Dateigröße:
      22.9 KB
      Aufrufe:
      5