Real account 'tom@hur.st' => 'Freaky@mas.to', ); function error($msg) { header($_SERVER["SERVER_PROTOCOL"] . " 400 $msg"); exit(0); } preg_match('/\Aacct:@?(.+)/', @$_GET['resource'], $match) or error('not parsed'); $redir = @$accounts[$match[1]] or error('no matching account'); $chunks = explode('@', $redir, 2); $url = "https://$chunks[1]/.well-known/webfinger?resource=acct:$redir"; header("Location: $url"); ?>