Cheatah: cgi funktion wie php header() ?

Beitrag lesen

Hi,

ich bin gerade am cgi/perl lernen

dann solltest Du insbesondere

perldoc CGI

lesen.

und würder gern wissen ob es so etwas gibt womit ich eine neue url aufrufen kann.

#!/usr/bin/perl -w
use strict;
use CGI ':standard';
print redirect('http://bla.de/');

Im CGI-Modul ist übrigens auch eine header-Methode implementiert.

header("Location: http://$user:$pw@www.domain.de/secure");

ARGH! Das möchtest Du _nicht_ machen! Derart defekte URLs[1] irgendwo als Link unterzubringen ist schon schlimm genug, obwohl die meisten im Einsatz befindlichen Clients den Schotter entweder in korrekte HTTP-Header umwandeln, oder den Download der URL verweigern; aber hier jagst Du
                        _               _ _            __ _
               ___  ___| |__   __ _  __| | |__   __ _ / _| |_ ___
              / __|/ __| '_ \ / _ |/ \_ | '_ \ / _` | |_| __/ _ \               \_ \ (__| | | | (_| | (_| | | | | (_| |  _| ||  __/
              |___/\
__|_| |_|\_,_|\_,_|_| |_|\_,_|_|  \_\___|

____        _                           _             _ _           _
   |  _ \  __ _| |_ ___ _ __    _   _ _ __ | | _____   __| (_) ___ _ __| |_
   | | | |/ _ | \_\_/ \_ \ '\_ \  | | | | '\_ \| |/ / \_ \ / \_ | |/ _ \ '__| __|
   | |_| | (_| | ||  __/ | | | | |_| | | | |   < (_) | (_| | |  __/ |  | |_
   |____/ \_,_|\_\__|_| |_|  \_,_|_| |_|_|\\__/ \_,_|_|\__|_|   \__|

_                _     _
             __ _ _   _  ___ _ __    __| |_   _ _ __ ___| |__ ( )___
            / _ | | | |/ \_ \ '\_\_|  / \_ | | | | '__/ __| '_ |// __|
           | (_| | |_| |  __/ |    | (_| | |_| | | | (__| | | | \_ \             \_, |\_,_|\__|_|     \_,_|\_,_|_|  \__|_| |_| |___/
               |_|
                              _   _      _       _
                             | \ | | ___| |_ ___| |
                             |  | |/ _ \ __|_  / |
                             | |\  |  __/ |_ / /|_|
                             |_| \
|\__|\_/___(_)

Du widersprichst damit *aktiv* RFC 1738[1] und bist ggf. für Schäden an Fremdsystemen *persönlich* verantwortlich!

Abgesehen davon können bereits diverse auch neuere IE-Versionen den Schrott nicht mehr umwandeln, so daß nicht mal das beliebte "ja, aber die meisten"-Pseudoargument zieht.

Cheatah

[1] RFC 1738, http://www.ietf.org/rfc/rfc1738.txt, Sektion 3.3 "HTTP-URLs":
    "No user name or password is allowed."