In diesem Kapitel wird die minimale Installation von Apache beschrieben.
Fritz!Box ohne USB-Speicher
Prinzipiell ist es möglich, apache auf einer Fritz!Box ohne USB-Speicher zum laufen zu bekommen, aber in diesem Falle empfiehlt sich dann doch, einen schlanken Web-Server zu nehmen, z.B. httpd.
Aus diesem Grunde verzichte ich zunächst auf die Beschreibung.
SQlite2-Unterstützung
Ab PHP 5.4.x wird SQlite2 nicht mehr unterstützt. Wer noch SQlite2 braucht, muss auf PHP 5.3.x downgraden.
Fritz!Box mit USB-Speicher
Achtung: das alte PHP-binary enthält eine kritische Sicherheitslücke. Ich empfehle dringend ein Update:
Zum Updaten muss php bzw. php-cgi im Ordner cgi-bin durch das neue Binary aus dem Archiv ersetzt werden. Alle downloads sind aktuallisiert!
1. Apache 2.4.6 herunterladen:
Achtung: Diese Versionen sind leider noch ungetestet. Bitte um Feedback!
- für mipsel-Fritz!Boxen (z.B. 7270, 7170 und andere)
- für mips-Fritz!Boxen (z.B. 7390, 7340 und andere)
- Eingeschaltete Funktionen:
- Enable deflate
- Enable SSL
- Enable libxml dependent modules
- Compile modules in instead of building loadable modules
- Create statically linked binary
- Liste der verfügbaren Module (für beide Versionen):
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106Compiled in modules:core.cmod_authn_file.cmod_authn_dbm.cmod_authn_anon.cmod_authn_dbd.cmod_authn_socache.cmod_authn_core.cmod_authz_host.cmod_authz_groupfile.cmod_authz_user.cmod_authz_dbm.cmod_authz_owner.cmod_authz_dbd.cmod_authz_core.cmod_access_compat.cmod_auth_basic.cmod_auth_form.cmod_auth_digest.cmod_allowmethods.cmod_file_cache.cmod_cache.cmod_cache_disk.cmod_cache_socache.cmod_socache_shmcb.cmod_socache_dbm.cmod_socache_memcache.cmod_watchdog.cmod_macro.cmod_dbd.cmod_dumpio.cmod_echo.cmod_buffer.cmod_data.cmod_ratelimit.cmod_reqtimeout.cmod_ext_filter.cmod_request.cmod_include.cmod_filter.cmod_reflector.cmod_substitute.cmod_sed.cmod_charset_lite.cmod_deflate.cmod_xml2enc.cmod_proxy_html.chttp_core.cmod_mime.cmod_log_config.cmod_log_debug.cmod_log_forensic.cmod_logio.cmod_env.cmod_mime_magic.cmod_expires.cmod_headers.cmod_usertrack.cmod_unique_id.cmod_setenvif.cmod_version.cmod_remoteip.cmod_proxy.cmod_proxy_connect.cmod_proxy_ftp.cmod_proxy_http.cmod_proxy_fcgi.cmod_proxy_scgi.cmod_proxy_fdpass.cmod_proxy_wstunnel.cmod_proxy_ajp.cmod_proxy_balancer.cmod_proxy_express.cmod_session.cmod_session_cookie.cmod_session_dbd.cmod_slotmem_shm.cmod_slotmem_plain.cmod_ssl.cmod_dialup.cmod_lbmethod_byrequests.cmod_lbmethod_bytraffic.cmod_lbmethod_bybusyness.cmod_lbmethod_heartbeat.cworker.cmod_unixd.cmod_heartbeat.cmod_heartmonitor.cmod_dav.cmod_status.cmod_autoindex.cmod_asis.cmod_info.cmod_suexec.cmod_cgid.cmod_cgi.cmod_dav_fs.cmod_dav_lock.cmod_vhost_alias.cmod_negotiation.cmod_dir.cmod_actions.cmod_speling.cmod_userdir.cmod_alias.cmod_rewrite.c
Apache 1.3.42 herunterladen:
- für mipsel-Fritz!Boxen (z.B. 7270, 7170 und andere)
- leider (noch) nicht verfügbar 🙁
- für mips-Fritz!Boxen (z.B. 7390, 7340 und andere)
- Liste der verfügbaren Module:
1234567891011121314151617181920212223242526272829303132333435Compiled-in modules:http_core.cmod_vhost_alias.cmod_env.cmod_define.cmod_log_config.cmod_mime_magic.cmod_mime.cmod_negotiation.cmod_status.cmod_info.cmod_include.cmod_autoindex.cmod_dir.cmod_cgi.cmod_asis.cmod_imap.cmod_actions.cmod_speling.cmod_userdir.cmod_alias.cmod_rewrite.cmod_access.cmod_auth.cmod_auth_anon.cmod_digest.cmod_proxy.cmod_cern_meta.cmod_expires.cmod_headers.cmod_usertrack.cmod_log_forensic.cmod_unique_id.cmod_setenvif.cmod_ssl.c
Apache 1.3.41 herunterladen:
- für mipsel-Fritz!Boxen (z.B. 7270, 7170 und andere)
- Liste der verfügbaren Module:
1234567891011121314151617181920Compiled-in modules:http_core.cmod_env.cmod_log_config.cmod_mime.cmod_negotiation.cmod_status.cmod_include.cmod_autoindex.cmod_dir.cmod_cgi.cmod_asis.cmod_imap.cmod_actions.cmod_userdir.cmod_alias.cmod_access.cmod_auth.cmod_setenvif.cmod_ssl.c - für mips-Fritz!Boxen (z.B. 7390, 7340 und andere)
- AKTUALISIERT am 03.02.2011: apache.conf wurde aktualisiert.
- AKTUALISIERT am 13.08.2011: php-cgi wurde ausgetauscht. (Das alte Binary war teilweise defekt)
- AKTUALISIERT am 11.05.2012: php-cgi wurde ausgetauscht.
- Liste der verfügbaren Module:
123456789101112131415161718192021222324252627282930313233Compiled-in modules:http_core.cmod_vhost_alias.cmod_env.cmod_log_config.cmod_mime_magic.cmod_mime.cmod_negotiation.cmod_status.cmod_info.cmod_include.cmod_autoindex.cmod_dir.cmod_cgi.cmod_asis.cmod_imap.cmod_actions.cmod_speling.cmod_userdir.cmod_alias.cmod_rewrite.cmod_access.cmod_auth.cmod_auth_anon.cmod_digest.cmod_proxy.cmod_cern_meta.cmod_expires.cmod_headers.cmod_usertrack.cmod_log_forensic.cmod_unique_id.cmod_setenvif.c
Apache 2.2.17 herunterladen:
- für mips-Fritz!Boxen (z.B. 7390, 7340 und andere)
- AKTUALISIERT am 13.08.2011: apache.conf wurde aktualisiert.
- AKTUALISIERT am 11.05.2012: php-cgi wurde ausgetauscht.
2. Archiv auf den USB-Speicher in den Ordner „apache“ auspacken
3. Zur Konfiguration wird die Datei conf/apache.conf verwendet. Meine apache.conf, die man im conf-Verzeichnis findet, muss man zunächst anpassen:
- Der String „Hitachi-HTS543216L9A300-01“ (der Name meiner Festplatte) muss durchgehend durch Ihren ersetzt werden: dazu verwende man am besten eine „Suche und Ersetze“-Funktion (Strg+H im Notepad++ oder Strg+R im Kate)
- Zur Errinerung: So finden Sie den Namen ihres USB-Speichers:
1 2 |
# ls /var/media/ftp/ Hitachi-HTS543216L9A300-01 |
Achtung! Seit der Firmware xx.xx.86 gibt es den Benutzer „ftpuser“ nicht mehr! Dieser heißt nun „boxusr80″(geprüft nur bei der Fritz!Box 7270v2). Daher muss man in apache.conf folgende Zeile anpassen:
1 |
User boxusr80 |
Den neuen Benutzernamen finden man sonnst in /etc/passwd:
1 |
cat /etc/passwd |
4. Nun kann man Apache starten: siehe Code unten. Dabei sollen keine Fehlermeldungen auftreten. Mit „ps“ sollte man außerdem prüfen, ob Apache wirklich läuft:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# ps | grep apache 812 root 3260 S /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/bin/apache -f /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/conf/apache.conf 2828 ftpuser 3316 S /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/bin/apache -f /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/conf/apache.conf 2829 ftpuser 3316 S /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/bin/apache -f /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/conf/apache.conf 2834 ftpuser 3384 S /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/bin/apache -f /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/conf/apache.conf 2835 ftpuser 3316 S /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/bin/apache -f /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/conf/apache.conf 2836 ftpuser 3316 S /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/bin/apache -f /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/conf/apache.conf 2837 ftpuser 3316 S /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/bin/apache -f /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/conf/apache.conf 2838 ftpuser 3344 S /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/bin/apache -f /var/media/ftp/Hitachi-HTS543216L9A300-01/apache/conf/apache.conf 2904 root 1304 S grep apache |
Man beachte: es müssen nicht unbedingt 8 Prozesse laufen – es können auch weniger oder mehr sein.
5. Wenn keine Fehler auftreten, sollte nun der Apache-Server INTERN unter http://fritz.box:85/ erreichbar sein (siehe Bild unten)
Man beachte: Unser Apache läuft momentan nun intern, aber schon mit PHP und SQLite!
Screenshot
6. Hurra! Unserer erster, einfachst konfigurierter Apache Web-Server läuft. Falls also alles funktioniert kann man den unten stehenden Code in debug.cfg eintragen (siehe Kap. „debug.cfg“)
7. Nun kann man unseren Apache weiter ausbauen. Dazu siehe weitere Unterkapitel oder folge diesen Links:
- Eigene Homepage anstatt meiner Begrüßung
- Apache von außen erreichbar machen
- ModSSL einrichten
- SQLiteManager installieren
- Svn-Server installieren
- …
Code
1 2 3 4 5 6 |
HDD='Hitachi-HTS543216L9A300-01' # ACHTUNG: unbedingt anpassen! HDD_ABSOLUT='/var/media/ftp/'$HDD while ! [ -d $HDD_ABSOLUT ] ; do sleep 5; done $HDD_ABSOLUT/apache/bin/apache -f $HDD_ABSOLUT/apache/conf/apache.conf |