[gelöst] FRITZ!Box Fon WLAN 7170 Firmware-Version 29.04.67 und Apache

fr@nk-pcn

Neuer User
Mitglied seit
6 Mrz 2006
Beiträge
117
Punkte für Reaktionen
0
Punkte
0
Ja Moin IPPF,

Gutes und Schlechtes ist mir passiert:

Hardware: FRITZ!Box Fon WLAN 7170 Firmware-Version 29.04.67, &GB- Stick FAT und mit Apache 1.3.37 und PHP 5.2.0 CGI (Link in meiner Signatur)

Zu dem Guten, -> AVM hat für Besitzer einer FB 7170 die o.g. Firmware veröffendlicht. Es gibt z.B. eine neue Busy Box.

Zu dem Schlechten: Mein Apache- Server startet nach Update auf Firmware 29.04.67 net mehr. Nach Update wurde auch der USB- Stick mit einer anderen Bezeichnung erkannt. Hab diese in der debug.cfg, apache.conf und php.ini angepasst.

Nach starten von Telnet und Eingabe von
Code:
/var/media/ftp/TrekStor-USBStickCS-D-00/apache/apache -f /var/media/ftp/TrekStor-USBStickCS-D-00/apache/conf/apache.conf
bekomme ich folgende Meldung:
Code:
[Mon Dec 29 08:32:42 2008] [error] Acces to file /var/media/ftp/TrekStor-USBStickCS[COLOR="Red"]-D-00[/COLOR]/apache/conf/apache.conf [B]denid by server: not a regular file
fopen: could not open dokument confog file[/B] /var/media/ftp/TrekStor-USBStickCS[COLOR="red"]-D-00[/COLOR]/apache/conf/apache.conf

[Gelöst]: Wie bringe ich dem "Ding" bei das der Apache- Server ein "regular file" ist?
THX Joe_57

Meine debug.cfg wie folgt:
Code:
# SIGNED_FIRMWARE Warnhinweis wegen Manipulation entfernen
dst=/var/tmp/signed_firmware
src=/usr/www/html/html/de/home
mkdir -pm 777 $dst
for file in home.js konfig.js; do
if [ -f $src/$file ]; then
sed -e 's,.*var signed =.*,var signed = "1",' $src/$file > $dst/$file
mount -o bind $dst/$file $src/$file
fi
done
# Ungebungsvariablen 
max=5
i=0
# warten auf USB-Stick
while [ $i -lt $max ]; do
if mount | grep " on /var/media/ftp/" > /dev/null; then
break
fi
let i=$i+1
sleep 10
done
# Umgebungsvariable $USBDEVICE für USB-Stick
[COLOR="Green"]USBDEVICE=$(mount | grep /var/media/ftp/ | sed -e "s|^.*ftp/||g" -e "s/ .*$//")[/COLOR]
(
echo "_______________________ Beginne Logfile debug.cfg _______________________"
date
echo "der Name des USB- Stick ist $USBDEVICE (siehe apache.conf, php.ini etc)"
echo "# Swapfile einbinden"
if [ -f /var/media/ftp/$USBDEVICE/share/fboxswap.img ]
then
[B][COLOR="red"]swapon[/COLOR][/B] /var/media/ftp/$USBDEVICE/share/fboxswap.img
echo "-OK"
fi
free
echo "# Nachladen von Dateien und Anpassen der Dateirechte"
if [ -f /var/media/ftp/$USBDEVICE/apache/apache ]
then
chmod +x  /var/media/ftp/$USBDEVICE/apache/apache
echo "-OK"
fi
echo "# warten auf internal Server (fritz.box)"
while !(ping -c 1 192.168.178.1); do
sleep 10
echo "-OK"
done
echo "# Listener- Interface fuer Apache- Server starten"
ifconfig cpmac0:1 192.168.178.253 netmask 255.255.255.0 up
# ifconfig eht0:1 192.168.178.253 netmask 255.255.255.0 up
echo "-OK"
echo "# warten bis Listener- Interface bereit"
while !(ping -c 1 192.168.178.253); do
sleep 10
echo "-OK"
done
echo "# Apache- Server starten"
if [ -f /var/media/ftp/$USBDEVICE/apache/conf/apache.conf ]
then
/var/media/ftp/$USBDEVICE/apache/apache -f /var/media/ftp/$USBDEVICE/apache/conf/apache.conf
echo "-OK"
fi
echo "# FB- Reboot 03:30Uhr"
awaitreboot() {
local day=$((60*60*24))
reboot -d $(( ($(date -d $(date +%m%d$1%Y) +%s) - $(date +%s) + $day) % $day ))
}
echo "-OK"
echo "________________________ Ende Logfile debug.cfg ________________________"
sleep 600; awaitreboot 0330) >> /var/media/ftp/$USBDEVICE/apache/logs/error.log 2>&1 &


Gruß aus der Haupstadt.
 
Zuletzt bearbeitet:
Hallo fr@nk-pcn,

da fehlt doch was! Ich habs mal in rot ergänzt:
Code:
[Mon Dec 29 08:32:42 2008] [error] Acces to file /var/media/ftp/TrekStor-USBStickCS[B][COLOR="red"]-D-00[/COLOR][/B]/apache/conf/apache.conf denid by server: not a regular file
fopen: could not open dokument confog file /var/media/ftp/TrekStor-USBStickCS[B][COLOR="Red"]-D-00[/COLOR][/B]/apache/conf/apache.conf
Desweiteren kannst du den Namen des USB-Devices auch automatisch auslesen lassen (Bitte NACH der Warten auf...-Passage einfügen:
Code:
USBDEVICE=$(mount | grep /var/media/ftp/ | sed -e "s|^.*ftp/||g" -e "s/ .*$//")

Joe
 
@ Joe_57

danke für die schnelle Reaktion und dein wachsames Auge. Hab meine o.g. dubug.cfg dementsprechend abgeändert. Der Apache lief trotz alladem net. Nachdem ich eine Apache 1.3.41 raufkopiert habe läuft wieder mein HTTP. Änderungen am Listener- Interface waren aus nötig da ifconfig cpmac0:192.168...... auch nicht mehr liefen.

[OT]
Mit Firmware-Version 29.04.67 hat AVM auch den swapon- Befehl entfernt. Bibt es da ne Alternative ohne feetz?

Code:
-sh: swapon: not found

[/OT]
 
Moin,
habe dasselbe Problem, wie habt ihr das jetzt gelöst ?

[Tue Apr 14 13:52:13 2009] [error] Access to file /var/media/ftp/Verbatim-STOREN
GO-01/apache/conf/apache.conf denied by server: not a regular file
fopen: No such file or directory
apache: could not open document config file /var/media/ftp/Verbatim-STORENGO-01/
apache/conf/apache.conf
-OK

Meine debug.cfg (deine oben, nur angepasst :))

/usr/sbin/telnetd -l /sbin/ar7login

cd /var/tmp
wget http://www.tecchannel.de/download/fritz.box/bftpd.conf
wget http://www.tecchannel.de/download/fritz.box/bftpd
chmod +x bftpd
chmod 777 bftpd.conf

echo "dispy:gauVx0TvSRe2w:0:0:root:/:null" >> /var/tmp/passwd
/var/tmp/bftpd -d -c /var/tmp/bftpd.conf


# Ungebungsvariablen
max=5
i=0
# warten auf USB-Stick
while [ $i -lt $max ]; do
if mount | grep " on /var/media/ftp/" > /dev/null; then
break
fi
let i=$i+1
sleep 10
done
# Umgebungsvariable $USBDEVICE für USB-Stick
USBDEVICE=$(mount | grep /var/media/ftp/ | sed -e "s|^.*ftp/||g" -e "s/ .*$//")
(
echo "_______________________ Beginne Logfile debug.cfg _______________________"
date
echo "der Name des USB- Stick ist $USBDEVICE (siehe apache.conf, php.ini etc)"
echo "# Swapfile einbinden"
if [ -f /var/media/ftp/$USBDEVICE/share/fboxswap.img ]
then
swapon /var/media/ftp/$USBDEVICE/share/fboxswap.img
echo "-OK"
fi
free
echo "# Nachladen von Dateien und Anpassen der Dateirechte"
if [ -f /var/media/ftp/$USBDEVICE/apache/bin/apache ]
then
chmod +x /var/media/ftp/$USBDEVICE/apache/bin/apache
echo "-OK"
fi
echo "# warten auf internal Server (fritz.box)"
while !(ping -c 1 192.168.178.1); do
sleep 10
echo "-OK"
done
echo "# Listener- Interface fuer Apache- Server starten"
ifconfig eth0:1 192.168.178.1 netmask 255.255.255.0 up
# ifconfig eht0:1 192.168.178.253 netmask 255.255.255.0 up
echo "-OK"
echo "# warten bis Listener- Interface bereit"
while !(ping -c 1 192.168.178.1); do
sleep 10
echo "-OK"
done
echo "# Apache- Server starten"
if [ -f /var/media/ftp/$USBDEVICE/apache/conf/apache.conf ]
then
/var/media/ftp/$USBDEVICE/apache/bin/apache -f /var/media/ftp/$USBDEVICE/apache/conf/apache.conf
echo "-OK"
fi
)

Ich bin stolzer Besitzer einer FRITZ!Box Fon WLAN 7141 (UI) mit Firmware 40.04.68 .


MfG
dispy
 
mit einer anderen Version. Orginalquelle: http://deefrag.dyndns.org

Edit: Ist ja fetzig, die URL funtz wieder :-D. THX

Alternative Konfiguration siehe hier
 
Zuletzt bearbeitet:
Also ich habe eine FritzBox 7270 mit der aktuellen Firmware "54.04.70"!!!

Habe die neuen Daten von der Homepage gesaugt und mich exakt an die Anleitung in der txt Datei gehalten. Jedoch beim letzten Punkt:

10. Telnet Eingabe von: /var/media/ftp/USB-FlashDisk-01/apache/apache -f /var/media/ftp/USB-FlashDisk-01/apache/conf/apache.conf
(dabei aber die Bezeichnung des USB Sticks wie unter 3. angeben)

kommt mal wieder diese Fehlermeldung:

[Wed Jun 3 21:20:36 2009] [error] Access to file /var/media/ftp/USB-FlashDisk-01/apache/conf/apache.conf denied by server: not a regular file
fopen: No such file or directory
apache: could not open document config file /var/media/ftp/USB-FlashDisk-01/apache/conf/apache.conf

Wie kann das angehen?
 
Zuletzt bearbeitet:
Apache ausführbar machen/ autostart

@ottelo -> versuch's hiermit:

1.) Apache entpacken und auf USB-FlashDisk-01 kopieren
2.) apache.conf der Umgebung anpassen
3.) via Telnetbox/ NVI debug.cfg editieren, kein ifconfig verwenden (siehe 4.))

debug.cfg
Code:
#!/bin/sh
[COLOR="Red"]# SIGNED_FIRMWARE wiederherstellen[/COLOR]
dst=/var/tmp/signed_firmware
src=/usr/www/html/html/de/home
mkdir -pm 777 $dst
for file in home.js konfig.js; do
if [ -f $src/$file ]; then
sed -e 's,.*var signed =.*,var signed = "1",' $src/$file > $dst/$file
mount -o bind $dst/$file $src/$file
fi
done
[COLOR="red"]# warten auf USB-Stick[/COLOR]
max=5
i=0
while [ $i -lt $max ]; do
if mount | grep " on /var/media/ftp/" > /dev/null; then
break
fi
let i=$i+1
sleep 15
done
[COLOR="red"]# Umgebungsvariable $USBDEVICE fuer USB-Stick[/COLOR]
USBDEVICE=$(mount | grep /var/media/ftp/ | sed -e "s|^.*ftp/||g" -e "s/ .*$//")
sleep 15
if [ -f /var/media/ftp/$USBDEVICE/apache/apache ]
then
[COLOR="DarkGreen"]chmod +x /var/media/ftp/$USBDEVICE/apache/apache[/COLOR]
fi
sleep 15
[COLOR="red"]echo "# HTTP-Server starten"[/COLOR]
if [ -f /var/media/ftp/$USBDEVICE/apache/conf/apache.conf ]
then
[COLOR="darkgreen"]/var/media/ftp/$USBDEVICE/apache/apache -f /var/media/ftp/$USBDEVICE/apache/conf/apache.conf[/COLOR]
fi
4.) via Telnetbox/ NVI ar7.cfg editieren
statt ifconfig eth0:1 192.168.178.1 netmask 255.255.255.0 up dort unter den Abschnitt dslifaces die rot markierte Zeile einhämmern
Code:
forwardrules = "udp 0.0.0.0:5060 0.0.0.0:5060", 
               [COLOR="Red"]"tcp 0.0.0.0:80 0.0.0.0:85 0 # Apache- Server";[/COLOR]

Box neustarten und schauen ob unter http://192.168.178.1:58 was erscheint

Gruß aus der Hauptstadt
 
Zuletzt bearbeitet:
Danke für deine Antwort :)

Aber ich habe es doch hinbekommen. Ich habe nochmal alles vom Stick geschmissen und neu begonnen. Jetzt läuft es!!!. Ich nehme nur das nötigste in die debug.cfg, was ungefähr bringt deine debug.cfg Einstellung?

und nochwas: Ich brauche unbedingt "mod_curl" und "mod_gd" für meinen Webserver. Wie kann ich sowas installieren?
 
Zuletzt bearbeitet:
was ungefähr bringt deine debug.cfg Einstellung?

# SIGNED_FIRMWARE wiederherstellen :Kosmetik für's GUI :Warnhinweis entfernen [Quelle]
# warten auf USB-Stick :wenn der Sticky halt noch nicht gemountet ist, kann File not found o.Ä. erscheinen und das Shellscript (debug.cfg) kann nicht ordendlich abgearbeitet werden. ...Deshalb wird an dieser Stelle gewartet bis da.
# Umgebungsvariable $USBDEVICE fuer USB-Stick :nachfolgend brauch kein absoluter Datenträgername angegeben werden. (gilt hier nur für die debug.cfg). Bei weiteren Shellscript's muss die Variable neu gesetzt werden. Praktisch für den der mal den oder den anderen Sticky mit anderen Namen an der Box ransteckt. Mittlerweile hat AVM ab FW XX.04.67 einen Symlink NEW_LINK implementiert und macht diese Variable fast überflüßig.
 
Zuletzt bearbeitet:
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.