Mini httpd

Aus Si:Wiki von Siegrist SystemLösungen - Informatik und Rezepte
Version vom 10. September 2015, 02:08 Uhr von Sigi (Diskussion | Beiträge) (Die Seite wurde neu angelegt: «<syntaxhighlight lang="perl"> #!/usr/bin/perl use strict; use IO::Socket; my $listensock=IO::Socket::INET6->new(Proto=>"tcp", LocalPort=>8000, Listen=>2, Reuse…»)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche
#!/usr/bin/perl
use strict;
use IO::Socket;
 
my $listensock=IO::Socket::INET6->new(Proto=>"tcp", LocalPort=>8000, Listen=>2, Reuse=>1) or die "failed to listen";
 
while( (my $con = $listensock->accept()) ) {
	my $request=<$con>;
  	$request =~ m!GET ([^ ]+) HTTP/1\..\r?\n!;
	open(INFILE, "<", "./$1");
	print $con "HTTP/1.0 200 OK\nContent-type: text/html\n\n", <INFILE>;
	close $con;
}