When I browse to http://localhost:4242/cat?lang=de&aktion=START in my hunchentoot application, I find two entries in the logfile:
[2008-12-04 16:23:55] 127.0.0.1 - "GET /cat?lang=de&aktion=START HTTP/1.1" 200 20493 "http://localhost:4242/cat?lang=de&aktion=LOGOUT" "Mozilla ...
[2008-12-04 16:23:55] 127.0.0.1 - "GET /cat?lang=de&aktion=START HTTP/1.1" 200 20493 "http://localhost:4242/cat?lang=de&aktion=START" "Mozilla ...
Should I worry about that?
I am using sessions and I am still using version 0.15.6.
Other question: how do I turn off the logfile in a standalone hunchentoot app?
Jens
On Thu, 04 Dec 2008 16:29:24 +0100, Jens Teich info@jensteich.de wrote:
When I browse to http://localhost:4242/cat?lang=de&aktion=START in my hunchentoot application, I find two entries in the logfile:
[2008-12-04 16:23:55] 127.0.0.1 - "GET /cat?lang=de&aktion=START HTTP/1.1" 200 20493 "http://localhost:4242/cat?lang=de&aktion=LOGOUT" "Mozilla ...
[2008-12-04 16:23:55] 127.0.0.1 - "GET /cat?lang=de&aktion=START HTTP/1.1" 200 20493 "http://localhost:4242/cat?lang=de&aktion=START" "Mozilla ...
Should I worry about that?
I'd say this shouldn't happen. Can you use a packet sniffer to check if the browser really makes two requests?
Other question: how do I turn off the logfile in a standalone hunchentoot app?
Edi Weitz schrieb:
Can you use a packet sniffer to check if the browser really makes two requests?
I have a testing network setup with two computers host (webserver) 192.168.2.101 (Win XP) client 192.168.2.100 (Mac OS 10.5)
Client (FF[*]) calls http://192.168.2.101:4242/cat?lang=fr&aktion=start
Hunchentoot logfile entry is:
<!-- start logfile --> [2008-12-05 14:13:40] 192.168.2.100 - "GET /cat?lang=fr&aktion=START HTTP/1.1" 200 21196 "http://192.168.2.101:4242/cat?lang=fr&aktion=START" "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; de; rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4"
[2008-12-05 14:13:40] 192.168.2.100 - "GET /cat?lang=fr&aktion=START HTTP/1.1" 200 21196 "http://192.168.2.101:4242/cat?lang=fr&aktion=START" "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; de; rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4"
[2008-12-05 14:13:40 [ERROR]] Error while processing connection: Error during socket operation in #<COMM:SOCKET-STREAM 200DEA87> : Eine bestehende Verbindung wurde softwaregesteuert durch den Hostcomputer abgebrochen. <!-- end logfile -->
windump on host listening for client gives
<!-- start network sniff --> C:\Dokumente und Einstellungen\JensTeich\Desktop>WinDump.exe -i 3 host 192.168.2.100 WinDump.exe: listening on \Device\NPF_{22723770-2B8B-443A-8B18-B081115D9396} 14:13:40.345608 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : S 2046829756:2046829756(0) win 65535 <mss 1460,nop,wscale 3,nop,nop,timestamp 880075859 0,sackOK,eol> 14:13:40.345701 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : S 997426145:997426145(0) ack 2046829757 win 65535 <mss 1260,nop,wscale 2,nop,n op,sackOK> 14:13:40.348258 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : . ack 1 win 65535 14:13:40.348434 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : P 1:763(762) ack 1 win 65535 14:13:40.441134 IP LENOVO-JENS.Speedport_W_502V_Typ_A.137 > 192.168.2.100.137: U DP, length 50 14:13:40.443273 IP 192.168.2.100 > LENOVO-JENS.Speedport_W_502V_Typ_A: ICMP 192. 168.2.100 udp port 137 unreachable, length 36 14:13:40.511255 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 1:1261(1260) ack 763 win 45799 14:13:40.511379 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 1261:2521(1260) ack 763 win 45799 14:13:40.755614 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : . ack 2521 win 65535 14:13:40.755659 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 2521:3781(1260) ack 763 win 45799 14:13:40.755780 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 3781:5041(1260) ack 763 win 45799 14:13:40.755848 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 5041:6301(1260) ack 763 win 45799 14:13:40.759604 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : . ack 5041 win 65520 14:13:40.759626 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 6301:7561(1260) ack 763 win 45799 14:13:40.759712 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : P 7561:8821(1260) ack 763 win 45799 14:13:40.759781 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 8821:10081(1260) ack 763 win 45799 14:13:40.762656 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : . ack 7561 win 65520 14:13:40.762684 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 10081:11341(1260) ack 763 win 45799 14:13:40.762780 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 11341:12601(1260) ack 763 win 45799 14:13:40.762843 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 12601:13861(1260) ack 763 win 45799 14:13:40.762922 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : . ack 8821 win 65520 14:13:40.762948 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 13861:15121(1260) ack 763 win 45799 14:13:40.763011 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 15121:16381(1260) ack 763 win 45799 14:13:40.767150 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : . ack 11341 win 65535 14:13:40.767176 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : P 16381:17641(1260) ack 763 win 45799 14:13:40.767262 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 17641:18901(1260) ack 763 win 45799 14:13:40.767343 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 18901:20161(1260) ack 763 win 45799 14:13:40.767451 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : . ack 13861 win 65535 14:13:40.767473 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 20161:21421(1260) ack 763 win 45799 14:13:40.767536 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : P 21421:21575(154) ack 763 win 45799 14:13:40.768020 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : . ack 16381 win 65535 14:13:40.771291 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : . ack 17641 win 65520 14:13:40.772353 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : . ack 20161 win 65520 14:13:40.772644 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : . ack 21575 win 65535 14:13:40.820761 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : P 763:1495(732) ack 21575 win 65535 14:13:40.894308 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 21575:22835(1260) ack 1495 win 45990 14:13:40.894465 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 22835:24095(1260) ack 1495 win 45990 14:13:40.894515 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 24095:25355(1260) ack 1495 win 45990 14:13:40.894563 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 25355:26615(1260) ack 1495 win 45990 14:13:40.894610 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 26615:27875(1260) ack 1495 win 45990 14:13:40.894658 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 27875:29135(1260) ack 1495 win 45990 14:13:40.894705 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : P 29135:29767(632) ack 1495 win 45990 14:13:40.894776 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 29767:31027(1260) ack 1495 win 45990 14:13:40.894825 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 31027:32287(1260) ack 1495 win 45990 14:13:40.894872 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 32287:33547(1260) ack 1495 win 45990 14:13:40.894919 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 33547:34807(1260) ack 1495 win 45990 14:13:40.894966 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 34807:36067(1260) ack 1495 win 45990 14:13:40.899155 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : . ack 24095 win 65535 14:13:40.899185 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . 36067:37327(1260) ack 1495 win 45990 14:13:40.899267 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : P 37327:37959(632) ack 1495 win 45990 14:13:40.902459 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : F 1495:1495(0) ack 25355 win 65535 14:13:40.902484 IP LENOVO-JENS.Speedport_W_502V_Typ_A.4242 > 192.168.2.100.49383 : . ack 1496 win 45990 14:13:40.902660 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : R 2046831251:2046831251(0) win 0 14:13:40.906996 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : R 2046831251:2046831251(0) win 0 14:13:40.907149 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : R 2046831251:2046831251(0) win 0 14:13:40.909107 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : R 2046831251:2046831251(0) win 0 14:13:40.909410 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : R 2046831251:2046831251(0) win 0 14:13:40.912076 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : R 2046831251:2046831251(0) win 0 14:13:40.912389 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : R 2046831251:2046831251(0) win 0 14:13:40.912600 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : R 2046831251:2046831251(0) win 0 14:13:40.912800 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : R 2046831251:2046831251(0) win 0 14:13:40.913071 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : R 2046831251:2046831251(0) win 0 14:13:40.913204 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : R 2046831251:2046831251(0) win 0 14:13:40.913365 IP 192.168.2.100.49383 > LENOVO-JENS.Speedport_W_502V_Typ_A.4242 : R 2046831252:2046831252(0) win 0 14:13:41.927748 IP LENOVO-JENS.Speedport_W_502V_Typ_A.137 > 192.168.2.100.137: U DP, length 50 14:13:41.932071 IP 192.168.2.100 > LENOVO-JENS.Speedport_W_502V_Typ_A: ICMP 192. 168.2.100 udp port 137 unreachable, length 36 14:13:43.427864 IP LENOVO-JENS.Speedport_W_502V_Typ_A.137 > 192.168.2.100.137: U DP, length 50 14:13:43.431725 IP 192.168.2.100 > LENOVO-JENS.Speedport_W_502V_Typ_A: ICMP 192. 168.2.100 udp port 137 unreachable, length 36
68 packets captured 77 packets received by filter 0 packets dropped by kernel <!-- end network sniff -->
Thanks for your help
[*] Problem seems to be browser dependent. Safari does not produce double logfile entries
Jens
2008/12/5 Jens Teich info@jensteich.de:
Edi Weitz schrieb:
Can you use a packet sniffer to check if the browser really makes two requests?
I have a testing network setup with two computers host (webserver) 192.168.2.101 (Win XP) client 192.168.2.100 (Mac OS 10.5)
Client (FF[*]) calls http://192.168.2.101:4242/cat?lang=fr&aktion=start
.. Hmm, now that I think of it, I think I've seen Firefox do this, too. Some sort of prefetching thing gone wrong, perhaps? Rob
Robert Synnott schrieb:
2008/12/5 Jens Teich info@jensteich.de:
Edi Weitz schrieb:
Can you use a packet sniffer to check if the browser really makes two requests?
I have a testing network setup with two computers host (webserver) 192.168.2.101 (Win XP) client 192.168.2.100 (Mac OS 10.5)
Client (FF[*]) calls http://192.168.2.101:4242/cat?lang=fr&aktion=start
.. Hmm, now that I think of it, I think I've seen Firefox do this, too. Some sort of prefetching thing gone wrong, perhaps? Rob
Seems to be a problem of FF. The search terms 'Firefox double requests' give > 4x10^6 hits.
Jens
Robert Synnott schrieb:
2008/12/5 Jens Teich info@jensteich.de:
Edi Weitz schrieb:
Can you use a packet sniffer to check if the browser really makes two requests?
I have a testing network setup with two computers host (webserver) 192.168.2.101 (Win XP) client 192.168.2.100 (Mac OS 10.5)
Client (FF[*]) calls http://192.168.2.101:4242/cat?lang=fr&aktion=start
.. Hmm, now that I think of it, I think I've seen Firefox do this, too. Some sort of prefetching thing gone wrong, perhaps? Rob
Problem solved.
As mentioned in http://www.markgandolfo.com.au/articles/33, FF retries the request when finding img-tags containing empty sources, ie. <img scr="">.
Therapy: removing these empty src attributes.
Jens