Thread 504 Gateway Time-out erhöhen? (30 answers)
Opened by bianca at 2014-09-20 08:13

bianca
 2014-09-22 09:27
#177429 #177429
User since
2009-09-13
6971 Artikel
BenutzerIn

user image
Ich kann es selbst nicht fassen, die Lösung war jetzt doch ganz einfach aber bitte schlagt mich nicht!
Ich hatte das TimeOut 3000 in der falschen httpd.conf. Habe hier mehrere lokale Server und bin durcheinander gekommen. Aufgefallen ist mir das, nachdem ich das Testscript dafür fertig hatte, weil ich Muffi widerlegen wollte.

Vielen Dank für eure Zeit, tut mir leid. War keine Absicht.

Dennoch hier das Testscript, vielleicht braucht es ja doch mal jemand.
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#!/usr/bin/perl -w
use strict;
use warnings;
use CGI;
use CGI::Carp 'fatalsToBrowser';
use IO::Handle; STDOUT->autoflush(1);
alarm 1800;

my $dauer_in_sekunden = 600;

(my $script = $0) =~ s/^.*[\\\/]//g;
my $cgi = new CGI;
if (defined $cgi->param('formular')) {
    sleep($dauer_in_sekunden);
    print STDOUT CGI->new->header(-charset => 'UTF-8').<<HTML_TEIL
<!DOCTYPE HTML>
<html>
    <head>
        <title>Test mit Perlscript gegen http Status 504</title>
    </head>
    <body>
        <div style="color:red;">FERTIG OHNE TIMEOUT!!</div>
    </body>
</html>
HTML_TEIL
;
}
elsif (defined $cgi->param('ajax')) {
    print STDOUT CGI->new->header(-charset=>'UTF-8').'weiter' if $cgi->param('diff') < $dauer_in_sekunden;
}
else {
    print STDOUT CGI->new->header(-charset=>'UTF-8').<<HTML_TEIL
<!DOCTYPE HTML>
<html>
    <head>
        <title>Test mit Perlscript gegen http Status 504</title>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
        <script>
            function los() {
                var epo_start = new Date();
                var ms = epo_start.getTime();
                var rhythmisch = function() {
                    var epo_jetzt = new Date();
                    var diff = (epo_jetzt.getTime()-ms)/1000;
                    var ausgabe = 'nach '+diff+' Sekunde(n)';
                    jQuery('#out').html(ausgabe);
                    console.log(ausgabe);
                    jQuery.ajax({
                        url: '$script',
                        data: 'ajax=set&diff='+diff,
                        type: 'POST',
                        cache: false,
                        success: function(data) {
                            if (data == 'weiter') {
                                window.setTimeout(function() { rhythmisch(); },1000);
                            }
                            else {
                                jQuery('#out').html('Kein weiter erhalten<br>'+jQuery('#out').html());
                            }
                        },
                        error: function() {
                            alert('Fehler');
                        }
                    });
                };
                document.formular.submit();
                rhythmisch();
            }
        </script>
    </head>
    <body>
        <form action="$script" name="formular" method="post">
            <input type="hidden" name="formular" value="set">
        </form>
        <input type="button" value="Los geht's mit einem Test über $dauer_in_sekunden Sekunden" onclick="los();">
        <div id="out" style="padding-top:20px;"></div>
    </body>
</html>
HTML_TEIL
;
}


P.S.: an Muffi: dennoch würde mich interessieren, wie man das macht mit der Zwischenausgabe. Kannst du mir das in dieses Script einbauen?
Last edited: 2014-09-22 09:29:10 +0200 (CEST)
10 print "Hallo"
20 goto 10

View full thread 504 Gateway Time-out erhöhen?