mediadonis hat geschrieben:Letztendlich besteht hier kein wirkliches "Problem",
nachdem ich hier 3 mal gelesen hatte, merke ich erst das oben im Post die Domain mit bzw ohne / endet
da Du ja einen Canonical von der non-slash Variante auf die slash Variante der Domain gesetzt hast. Ein Canonical ist hier zwar nach dem 301er die zweitbeste Option, aber dennoch gut und richtig gelöst. [/quote]
ähm?
habe eben eine DOmain im FF aufgerufen
einmal mit / einmal ohne
dann das selbe mit IE
Ergebniss
FF zeigt in der URLzeile niemals den /
IE zeigt den / immer
dann (auch mit beiden Browser; Das ist zwar unötig ....)
mit HTTPreader ....
https://www.andyhoppe.com/software/http ... header.htm
wieder mit / und ohne
auf der "Ausgabeseite" steht dann immer der / als Adresse drin
Fazit
Domain, ohne Pfad und oder Datei hat teschnisch trotzdem einen / der von FF aber nicht angezeigt wird
also, Domain ohne Slash gibts NiCHT
für HTTPread habe ich eine funktion
Code: Alles auswählen
function httpheader( $url ,$headonly=0)
{
$TEXT= strtok($url,'/');$TEXT=str_replace(':','',$TEXT);
$host= strtok( '/');
$path='/'.strtok( '');
$domain['host'] = @gethostbyname( $host );
$domain['host'].=' @ '. @gethostbyaddr( $domain['host'] );
if (strlen($TEXT)==5)
{
//$host='ssl://'.$host;
$PORT=443;
}else $PORT=80;$PORT=80;
$fp = @fsockopen ($host, $PORT, $error_number, $error_string, 30);
if ($fp)
{
fputs ($fp, "GET $path HTTP/1.0\r\nHost: $host\r\n\r\n");
/*
if (strlen($TEXT)==5)
fputs ($fp, "GET $path HTTPS/1.1\r\nHost: $host\r\n\r\n");
else fputs ($fp, "GET $path HTTP/1.0\r\nHost: $host\r\n\r\n");
*/
$buffer=''; $block=256; $httph=0;
while (!feof($fp) && ++$httph)
{
$line=fgets($fp,$block);
if ( !strlen( trim($line) ) ) $httph=-1;
elseif ( $httph==1 )
{
$domain['tp'] =strtok($line,' ');
$domain['stat']=strtok( '');
}
else
{
$tok =strtolower(strtok($line,':'));
$domain[$tok]= strtok( '');
} $domain[http].=$line;
}
while (!feof($fp) && !$headonly)
{
$line=fgets($fp,$block);
$domain[html].=$line;
}
fclose($fp);
// $content.=nl2br($domain[http]);
}
return($domain);
}
mal kurz abwandeln
um zu sehen was passiert
Code: Alles auswählen
$path='';
fputs ($fp, "GET $path HTTP/1.0\r\nHost: $host\r\n\r\n");
Ergebniss .... HTTP/1.1 400 Bad Request
Also
Domain ohne Slash aufrufen geht nicht (der Browser hängt einen dran)