Fórum Root.cz

Hlavní témata => Server => Téma založeno: Robik 04. 06. 2012, 16:42:50

Název: Web server pomocí Netcat
Přispěvatel: Robik 04. 06. 2012, 16:42:50
Dobrý den,

Snažím se rozchodit webserver pomocí netcatu. V prohlížeči zobrazuji výpis složky pomocí ls. mám dva soubory jeden server.sh kde se spouští pouze
Kód: [Vybrat]
nc -l -p 8888 -c test.sh


Přičemž test.sh se nachází v /usr/bin a obsahuje ls -l /home/...  Vše funguje dobře až na to že po znovu načtení stránky spojení spadne. Proto bych se chtěl zeptat jak problém vyřešit? Použití cyklu while ale jak? Něco jako while read REQUEST?


Díky moc za každou pomoc
Název: Re:Netcat server
Přispěvatel: Lol Phirae 04. 06. 2012, 16:45:02
 :o ::) ;D :D
Název: Re:Netcat server
Přispěvatel: Robik 04. 06. 2012, 16:50:00
:o ::) ;D :D

diky za pomoc  8)  ???
Název: Re:Netcat server
Přispěvatel: Sten 04. 06. 2012, 16:52:31
1. Proč to děláte pomocí netcatu? Třeba nginx by tohle zvládl IMO mnohem lépe (např. netcat neumí více spojení paralelně).

2.
Kód: [Vybrat]
nc -l -k -p 8888 -c test.sh
Název: Re:Netcat server
Přispěvatel: Robik 04. 06. 2012, 16:59:19
1. Proč to děláte pomocí netcatu? Třeba nginx by tohle zvládl IMO mnohem lépe (např. netcat neumí více spojení paralelně).

2.
Kód: [Vybrat]
nc -l -k -p 8888 -c test.sh

Parametr "-k"?
Název: Re:Netcat server
Přispěvatel: Sten 04. 06. 2012, 18:16:27
Parametr "-k"?

Přesně tak. Parametr „-k“ dělá to, že netcat neskončí s prvním požadavkem, ale bude naslouchat a vyřizovat požadavky, dokud jej neukončíte.
Název: Re:Netcat server
Přispěvatel: Robik 04. 06. 2012, 19:23:26
Parametr "-k"?

Přesně tak. Parametr „-k“ dělá to, že netcat neskončí s prvním požadavkem, ale bude naslouchat a vyřizovat požadavky, dokud jej neukončíte.

Bohuzel taky nefunguje
Název: Re:Netcat server
Přispěvatel: kagro 05. 06. 2012, 09:00:39
Ahoj,

neviem, či rozumiem, čo chceč urobiť, toto nepomôže?:

Kód: [Vybrat]
while :
do
nc -l -p 12345 -e ./wsbin
echo "Koniec...."
done

Název: Re:Netcat server
Přispěvatel: Sten 05. 06. 2012, 16:10:00
Bohuzel taky nefunguje

Tipuji, že to bude tím, že tam máte keep-alive (neposíláte „Connection: close“). Dokud to spojení není uzavřené, netcat nezačne vyřizovat požadavky od někoho jiného. Proto vám doporučuji třeba ten nginx.

Ale pokud trváte na shellu, tady máte krásný návod (http://paulbuchheit.blogspot.cz/2007/04/webserver-in-bash.html)  :)