Stefan Kleeschulte: HTTP::UserAgent gibt bei "http://www" keinen Fehler aus

Beitrag lesen

Hi zusammen!

Ich habe mir in Perl ein Gästebuch-Script geschrieben. Dieses Script prüft bei einem neuen Eintrag unter anderem mit Hilfe des HTTP::UserAgent, ob die eingegebene Homepage-URL korrekt bzw. erreichbar ist:

<schnip>
  if ($FORM{'homepage'} ne "") {
    $url = $FORM{'homepage'};

require LWP::UserAgent;
    $ua = LWP::UserAgent->new();

$request = HTTP::Request->new('GET', $url);
    $response = $ua->request($request);

if($response->is_error) {
      $homepage_error = 1;
      $homepage_error_info_code = $response->code();
      $homepage_error_info_message = $response->message();
      $homepage_error_message = "Die angegebene Homepage-URL ist nicht korrekt! (Die Angabe einer Homepage-URL ist nicht zwingend. Genauer Fehler: "$homepage_error_info_code $homepage_error_info_message")";
    } else {
      $homepage_error = 0;
    }
  } else {
    $homepage_error = 0;
  }
<schnap>

Wenn nun jemand als Homepage-URL "http://www" oder "http://www/" eingibt, dann gibt HTTP::UserAgent leider keine Fehlermeldung aus. Woran kann das liegen?
Und reicht es aus, zusätzlich einfach noch zu prüfen, ob $FORM{'homepage'} nicht "http://www" oder "http://www/" enthält, oder gibt es noch andere solcher "Lücken"?

CU :-)
Stefan