Temat: uhttpd

Witam Wszystkich. To mój pierwszy post na forum, stałem się posiadaczem TL-WR710N z wgranym Gargoyle, uruchomiłem już serwer FTP , samba , dostęp do serwera z Wan, router podpięty do lan przez wifi jako bridge tylko jako klient.
Zainstalowałem UHTTPD, zmieniłem port Gargoyle na 81, port uhttp na 80, przekierowania NAT w modemie są, wskazałem folder WWW z najprostszą stronką. Niestety ze strony WAN pokazuje mi się coś takiego:

PunBB bbcode test

przy poleceniu "start":

root@Gargoyle:~# /etc/init.d/uhttpd start
Error: No sockets bound, unable to continue
bind(): Address already in use
Error: No sockets bound, unable to continue
bind(): Address already in use
Error: No sockets bound, unable to continue




uci show uhttpd:

root@Gargoyle:~# uci show uhttpd
uhttpd.main=uhttpd
uhttpd.main.listen_http=0.0.0.0:80
uhttpd.main.listen_https=0.0.0.0:443
uhttpd.main.home=/www
uhttpd.main.rfc1918_filter=1
uhttpd.main.max_requests=3
uhttpd.main.cert=/etc/uhttpd.crt
uhttpd.main.key=/etc/uhttpd.key
uhttpd.main.cgi_prefix=/cgi-bin
uhttpd.main.script_timeout=60
uhttpd.main.network_timeout=30
uhttpd.main.tcp_keepalive=1
uhttpd.px5g=cert
uhttpd.px5g.days=730
uhttpd.px5g.bits=1024
uhttpd.px5g.country=DE
uhttpd.px5g.state=Berlin
uhttpd.px5g.location=Berlin
uhttpd.px5g.commonname=OpenWrt
uhttpd.@uhttpd[0]=uhttpd
uhttpd.@uhttpd[1]=uhttpd
uhttpd.@uhttpd[1].listen_home=mnt/usbdrive/www
uhttpd.@uhttpd[1].listen_http=0.0.0.0:80
uhttpd.@uhttpd[2]=uhttpd
uhttpd.@uhttpd[2].listen_http=0.0.0.0:80
uhttpd.@uhttpd[2].home=/www

Proszę o pomoc w uruchomieniu tej usługi [zaznaczam że w Linuksie jestem całkowicie zielony]
Maciej

2

Odp: uhttpd

Błędem jest to, że oba serwery słuchają na porcie 80. Najprościej - przestaw gargoyle w na inny port (w /etc/config/http_gargoyle - z 80 na np. 81). Wtedy do gui gagroyle dostajesz się przez http://192.168.1.1:81, a na porcie 80 masz nowy serwer.

Druga uwaga - rozpędziłeś się trochę, bo masz trzy razy uhttpd słuchające na porcie 80. Te dwie ostatnie sekcje skasuj (trzecia uwaga- listen_home=mnt/usbdrive/www jest źle bo brakuje / przy ścieżce), a zmieniaj tylko pierwszą sekcję (main)

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: uhttpd

porty mam właśnie tak uhttpd :80, gargoyle :81
czy mógłbyś łopatologicznie podać komendy jakie muszę użyć w putty aby wykonać Twoje podpowiedzi?

4

Odp: uhttpd

uci del uhttpd.@uhttpd[0]
uci del uhttpd.@uhttpd[1]
uci del uhttpd.@uhttpd[2]
uci set uhttpd.main.home=/mnt/usbdrive/www
uci commit
/etc/init.d/uhttpd restart

Zakładając że masz katalog /mnt/usbdrive/www i właśnie tam jest plik index.html

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5

Odp: uhttpd

Komenda:uci set uhttpd.main.home=/mnt/usbdrive/www jest "invalid argument"

powstało coś takiego:

root@Gargoyle:~# uci show uhttpd
uhttpd.px5g=cert
uhttpd.px5g.days=730
uhttpd.px5g.bits=1024
uhttpd.px5g.country=DE
uhttpd.px5g.state=Berlin
uhttpd.px5g.location=Berlin
uhttpd.px5g.commonname=OpenWrt
uhttpd.@uhttpd[0]=uhttpd
uhttpd.@uhttpd[1]=uhttpd
uhttpd.@uhttpd[1].listen_http=0.0.0.0:80
uhttpd.@uhttpd[1].home=/www
root@Gargoyle:~# /etc/init.d/uhttpd start
Error: No sockets bound, unable to continue
bind(): Address already in use
Error: No sockets bound, unable to continue

folder www mam bezpośrednio na partycji dysku usb, przy innych ustawieniach nie znajduje folderu.
strona otwiera się nadal taka jak w pierwszym poście.

6

Odp: uhttpd

Dobra, bo jeszcze gorzej jest.


opkg remove uhttpd
opkg install uhttpd
uci set uhttpd.@uhttpd[0].home=/mnt/usbdrive/www
uci commit

Czy dysk masz faktycznie zamontowany w /mnt/usbdrive? Bo gargoyle nie montuje dysków w /mnt domyślnie.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

7

Odp: uhttpd

Dysk jest zamontowany z automatu przez gargoyle....

8

Odp: uhttpd

Więc /tmp/usb_mount/dev_sda1/www jak już a nie /mnt/usbdrive/www... i znów - sda1 jeżeli to pierwszy dysk. Zrób polecenie mount i dowiesz się gdzie jest zamontowany.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9

Odp: uhttpd

Heh nadal:

root@Gargoyle:~# uci show uhttpd
uhttpd.px5g=cert
uhttpd.px5g.days=730
uhttpd.px5g.bits=1024
uhttpd.px5g.country=DE
uhttpd.px5g.state=Berlin
uhttpd.px5g.location=Berlin
uhttpd.px5g.commonname=OpenWrt
uhttpd.@uhttpd[0]=uhttpd
uhttpd.@uhttpd[0].home=/tmp/usb_mount/dev_sda5/www
uhttpd.@uhttpd[1]=uhttpd
uhttpd.@uhttpd[1].listen_http=0.0.0.0:80
uhttpd.@uhttpd[1].home=/www

root@Gargoyle:~# mount
rootfs on / type rootfs (rw)
/dev/root on /rom type squashfs (ro,relatime)
proc on /proc type proc (rw,noatime)
sysfs on /sys type sysfs (rw,noatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noatime,size=14580k)
tmpfs on /dev type tmpfs (rw,noatime,size=512k,mode=755)
devpts on /dev/pts type devpts (rw,noatime,mode=600)
/dev/mtdblock3 on /overlay type jffs2 (rw,noatime)
overlayfs:/overlay on / type overlayfs (rw,relatime,lowerdir=/,upperdir=/overlay)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
none on /proc/bus/usb type usbfs (rw,relatime)
nfsd on /proc/fs/nfsd type nfsd (rw,relatime)
/dev/sda5 on /tmp/share_home/automaciek/PLIKI type fuseblk (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other,blksize=4096)
/dev/sda5 on /tmp/share_home/anonymous/PLIKI type fuseblk (ro,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other,blksize=4096)

root@Gargoyle:~# /etc/init.d/uhttpd start
Error: Invalid directory /tmp/usb_mount/dev_sda5/www: No such file or directory

W gargoyle dysk jest widziany jako /dev/sda5/

10

Odp: uhttpd

Partycję ci przecie montuje w /tmp/share_home/automaciek/PLIKI a nie w /tmp/usb_mount/dev_sda5/www -- zamień te ścieżki.

11

Odp: uhttpd

Też nie - to jest tylko bind od vsftpd pochodzący a nie właściwe montowanie dysku, Kłania się włączenie ftp na partycji ntfs smile

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

12 (edytowany przez automaciek 2014-11-01 19:28:00)

Odp: uhttpd

partycja ext4, folder już znajduje, ale nadal otwiera tą dziwną stronę z 1 postu.

root@Gargoyle:~# uci show uhttpd
uhttpd.px5g=cert
uhttpd.px5g.days=730
uhttpd.px5g.bits=1024
uhttpd.px5g.country=DE
uhttpd.px5g.state=Berlin
uhttpd.px5g.location=Berlin
uhttpd.px5g.commonname=OpenWrt
uhttpd.@uhttpd[0]=uhttpd
uhttpd.@uhttpd[0].home=/tmp/usb_mount/dev_sda1/www
uhttpd.@uhttpd[1]=uhttpd
uhttpd.@uhttpd[1].listen_http=0.0.0.0:80
uhttpd.@uhttpd[1].home=/www

root@Gargoyle:~# mount
rootfs on / type rootfs (rw)
/dev/root on /rom type squashfs (ro,relatime)
proc on /proc type proc (rw,noatime)
sysfs on /sys type sysfs (rw,noatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noatime,size=14580k)
tmpfs on /dev type tmpfs (rw,noatime,size=512k,mode=755)
devpts on /dev/pts type devpts (rw,noatime,mode=600)
/dev/mtdblock3 on /overlay type jffs2 (rw,noatime)
overlayfs:/overlay on / type overlayfs (rw,relatime,lowerdir=/,upperdir=/overlay)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
none on /proc/bus/usb type usbfs (rw,relatime)
/dev/sda1 on /tmp/usb_mount/5ca9ee25-1ed5-44d1-a563-8823732ddd3d type ext4 (rw,noatime,user_xattr,barrier=1,data=ordered)
/dev/sda1 on /tmp/share_home/automaciek/PLIKI type ext4 (rw,noatime,user_xattr,barrier=1,data=ordered)
/dev/sda1 on /tmp/share_home/anonymous/PLIKI type ext4 (ro,noatime,user_xattr,barrier=1,data=ordered)
nfsd on /proc/fs/nfsd type nfsd (rw,relatime)

root@Gargoyle:~# /etc/init.d/uhttpd restart
Error: No sockets bound, unable to continue

13

Odp: uhttpd

Bo znów coś dodałeś po swojemu do konfiguracji uhttpd. Znów masz dwie sekcje konfiguracyjne (nie pełne na dodatek). Nie dodawaj już nic tam jak miałeś dobrze. Teraz zmień konfig żeby była  jedna sekcja.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

14 (edytowany przez automaciek 2014-11-02 10:38:50)

Odp: uhttpd

root@Gargoyle:~# uci show uhttpd
uhttpd.px5g=cert
uhttpd.px5g.days=730
uhttpd.px5g.bits=1024
uhttpd.px5g.country=DE
uhttpd.px5g.state=Berlin
uhttpd.px5g.location=Berlin
uhttpd.px5g.commonname=OpenWrt
uhttpd.@uhttpd[0]=uhttpd
uhttpd.@uhttpd[0].home=/tmp/usb_mount/dev_sda1/www
uhttpd.@uhttpd[0].listen_http=0.0.0.0:80

Dziękuję wszystkim za poświęcony czas i uwagę, serwer ruszył.

15

Odp: uhttpd

Witam ponownie. Szukam jeszcze podpowiedzi odnośnie autostartu uhttpd. Ustawiłem automatyczny restart niestety po restarcie działają wszystkie usługi poza UHTTPD.
W Gargoyle jest zaznaczony autostart, ponadto próbowałem : /etc/init.d/uhttpd enable, niestety nadal to samo.
folder "www" mam na HDD po USB
Czy jest inna metoda zmuszenia go do współpracy?

16

Odp: uhttpd

Musi być uruchomiony PO zamontowaniu dysku. Więc uruchamiaj np. tak: http://eko.one.pl/?p=openwrt-skrypty#ur … zopnieniem

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

17

Odp: uhttpd

Mimo usilnych starań nie udało mi sie poprawnie wprowadzić poprawnego opóźnionego startu.
(Ślepe 60; /etc/init.d/uhttpd start) &
Nie podziałała. Cezary podpowiedz krok po kroku jak podejżeć i wyedytowć rc.local

18

Odp: uhttpd

sleep nie ślepe.

cat /etc/rc.local, o edycji masz na eko.one.pl

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

19

Odp: uhttpd

cd /etc/
vi rc.local
(sleep 60; /etc/init.d/uhttpd start) &
:wq

Pojawia sie w usługach pozycja "rc.local"
I voila.
Dziękuję Cezary, to moje trudne początki.

20

Odp: uhttpd

(Ślepe 60...

big_smile

21

Odp: uhttpd

To jeszcze ja się dołączę - czy uhttpd służy tylko do wyswietlania stron?
Pytam bo interesuje mnie opcja udostepniania pliku przez www. Niestety każdorazowe odwołanie
http://ip:port/plik.bin
otrzymuję komunikat "No such file or directory"
a odwołanie
http://ip:port/plik.html
działa bez zarzutu

WDR3600, ADATA S102 PRO 32GB, extroot, ver. Gargoyle 1.12.0.2

22

Odp: uhttpd

uhttpd to serwer www. Możesz udostępniać co chcesz. Masz ten plik.bin w katalogu?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

23

Odp: uhttpd

Problem istnienia plików sprawdziłem jako pierwsza z możliwych przyczyn. I są te pliki - a nie wiem dlaczego uhttpd ich nie widzi.
Tzn. widzi wszystko co ma rozszeżenie html a już jakiś pliczek binarny nie.

WDR3600, ADATA S102 PRO 32GB, extroot, ver. Gargoyle 1.12.0.2