2010-07-03T14:47:22
pqvielleicht wäre ja sogar ein code-schnipsel möglich?
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
sub get_remote_addr {
exists $ENV{'REMOTE_ADDR'} && do {
$ENV{'REMOTE_ADDR'}
? return $ENV{'REMOTE_ADDR'}
: return 'empty';
};
return 'empty';
}
sub get_referrer {
exists $ENV{'HTTP_REFERER'} && do {
$ENV{'HTTP_REFERER'}
? return $ENV{'HTTP_REFERER'}
: return 'empty';
};
return 'empty';
}
sub get_client_ip {
exists $ENV{'HTTP_CLIENT_IP'} && do {
($ENV{'HTTP_CLIENT_IP'} and $ENV{'HTTP_CLIENT_IP'} ne '127.0.0.1')
? return $ENV{'HTTP_CLIENT_IP'}
: return 'empty';
};
return 'empty';
}
sub get_x_ip_client {
exists $ENV{'X_CLIENT_IP'} && do {
($ENV{'X_CLIENT_IP'} and $ENV{'X_CLIENT_IP'} ne '127.0.0.1')
? return $ENV{'X_CLIENT_IP'}
: return 'empty';
};
return 'empty';
}
sub get_http_via {
exists $ENV{'HTTP_VIA'} && do {
($ENV{'HTTP_VIA'} and $ENV{'HTTP_VIA'} ne '127.0.0.1')
? return $ENV{'HTTP_VIA'}
: return 'empty';
};
return 'empty';
}
sub get_x_forwarded {
exists $ENV{'HTTP_X_FORWARDED_FOR'} && do {
($ENV{'HTTP_X_FORWARDED_FOR'} and $ENV{'HTTP_X_FORWARDED_FOR'} ne '127.0.0.1')
? return $ENV{'HTTP_X_FORWARDED_FOR'}
: return 'empty';
};
return 'empty';
}
sub get_client_host {
my $client_ip = shift;
my ($ip_addr, $client_host);
$client_ip ne 'empty'
? do {
$ip_addr = inet_aton($client_ip) || 'N/A';
$client_host = gethostbyaddr($ip_addr, AF_INET) || 'N/A';
length($client_host) < 3 && ($client_host = 'N/A');
}
: ($client_host = 'N/A');
\$client_host;
}
Last edited: 2010-07-04 13:50:59 +0200 (CEST)
Die Deutsche Rechtschreibung ist Freeware; Du darfst sie kostenlos nutzen – aber sie ist nicht Open Source, d.h. Du darfst sie nicht verändern und/oder in veränderter Form veröffentlichen.