Gram z perl tancerzem na Linuksie i wszystko jest miłe i dany, jeśli przeglądarka łączy się z serwerem bezpośrednio przez LAN. Jednak po połączeniu się przez WAN i przeglądarką jest IE9, wtedy od czasu do czasu ruchliwy kursor nie znika.Dancer losowo zawiesza się czytając żądanie GET
Mogę to sprowokować, ponownie ładując stronę apx 10 razy z rzędu. Dostaję ten problem, nawet gdy czekam na severall sekund między każdym przeładowaniem. Sama strona jest strasznie prosta i przechodzi test w3c.
Nie ma znaczenia, czy uruchamiam tancerkę jako root, czy też port ma 80 lub 3000 lat. Sprawdziłam również częste ponowne ładowanie strony z apache i nie wydaje się, że jest to problem.
Zrobiłem strace i mam wrażenie, że dane żądania są czasami niedostępne w chwili, gdy tancerz próbuje je odczytać. To właśnie ślad wygląda
Kiedy to działa:
{sa_family=AF_INET, sin_port=htons(52073), sin_addr=inet_addr("78.42.213.92")}, [16]) = 4
ioctl(4, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfab5028) = -1 ENOTTY (Inappropriate ioctl for device)
_llseek(4, 0, 0xbfab5070, SEEK_CUR) = -1 ESPIPE (Illegal seek)
ioctl(4, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfab5028) = -1 ENOTTY (Inappropriate ioctl for device)
_llseek(4, 0, 0xbfab5070, SEEK_CUR) = -1 ESPIPE (Illegal seek)
fcntl64(4, F_SETFD, FD_CLOEXEC) = 0
getpeername(4, {sa_family=AF_INET, sin_port=htons(52073), sin_addr=inet_addr("78.42.213.92")}, [16]) = 0
read(4, "G", 1) = 1
read(4, "E", 1) = 1
read(4, "T", 1) = 1
Kiedy wisi
{sa_family=AF_INET, sin_port=htons(52225), sin_addr=inet_addr("78.42.213.92")}, [16]) = 4
ioctl(4, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfab5028) = -1 ENOTTY (Inappropriate ioctl for device)
_llseek(4, 0, 0xbfab5070, SEEK_CUR) = -1 ESPIPE (Illegal seek)
ioctl(4, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfab5028) = -1 ENOTTY (Inappropriate ioctl for device)
_llseek(4, 0, 0xbfab5070, SEEK_CUR) = -1 ESPIPE (Illegal seek)
fcntl64(4, F_SETFD, FD_CLOEXEC) = 0
getpeername(4, {sa_family=AF_INET, sin_port=htons(52225), sin_addr=inet_addr("78.42.213.92")}, [16]) = 0
read(4,
a potem siada na zawsze. Każdy pomysł, co mogę zrobić?
Widziałem także blokady IE9 na Tancerze działające w trybie Plack z HTTP :: Server :: Simple. Moje tymczasowe rozwiązanie polegało na używaniu Firefoksa, a moim długoterminowym rozwiązaniem było użycie w pewnym momencie serwera końcowego wyższej klasy z oprogramowaniem Plack. Dancer dostarcza dokumentację konfiguracji dla różnych serwerów WWW, takich jak nginx - podobny do rozwiązania @wes. –
@ws umieszczam tancerza za apache i wszystko wydaje się być w porządku. Dzięki –