Seite 1 von 1

Schlimm wenn Metadaten(keywords,desc) nicht ganz oben steht?

Verfasst: 26.01.2007, 11:34
von maloa
hi, habe ne website, deren aufbau so is

das ich eine index.php habe in der die ganzen "design" sachen drin stehen, also wie die page auszusehen hat, und per index.php?site=banner, oder index.php?site=hallo

die datein banner.php oder hallo.php per

<?php
if($_GET['page']){
$dateiname = $_GET['page'];
}else{
$dateiname = 'home'; //Standartdatei wäre main.php
}
include('./'.$dateiname.'.php');
?>

Code: Alles auswählen


iincludiere... glaubt auch alles wunderbar, habe auch per modrewrite aus index.php?page=banner  > banner.html gemacht


nun möchte ich aber natürlich für jede unterseite eigene Meta keywords und description machen.

wenn ich diese in die unterseiten wie z.b banner.php einfüge, dann stehen die meta daten ja beim aufruf von banner.php nicht ganz oben, sondern an der stelle im quelltext wo auch der include befehl steht. beeinträchtigt das das ranking bzw die bewertung bei google?

weil wenn ich in der index.php direkt die meta´s eingebe, hat jede unterseite die selbe

hoffe ihr könnt mich verstehen , bzw wißt worauf ich hinaus will &#58;&#41;

danke schon mal

Verfasst:
von

Verfasst: 26.01.2007, 11:49
von godzilla
ähm....

dann lass es halt ganz oben inkludieren.

Noch was ich rate dir eindringlichst von dieser Include methode Abstand zu nehmen.
<?php
if($_GET['page']){
$dateiname = $_GET['page'];
}else{
$dateiname = 'home'; //Standartdatei wäre main.php
}
include('./'.$dateiname.'.php');
?>
Das ist absolut tödlich! Wenn du das unbedingt so machen willst dann führe wenigstens eine Whitlistprüfung durch.

Verfasst: 26.01.2007, 14:47
von chrizz
@godzilla welche alternativen gibt es denn dazu?


um auf die ausgangsfrage einzugehen: die meta daten müssen im <head> stehen. d.h. du kommst ncith drum herum eine 2te datei zu includieren die da z.b. banner_head.php heißt. dort stehen dann die metas. die includierst du in deiner index.php oben im head....

Verfasst: 26.01.2007, 18:38
von godzilla
Nun schau dir diesen Code an:
<?php
if($_GET['page']){
$dateiname = $_GET['page'];
}else{
$dateiname = 'home'; //Standartdatei wäre main.php
}
include('./'.$dateiname.'.php');
?>
Hier wird völlig ungeprüft eine Seite includiert.
die URL sieht also sinngemäss folgend aus:
https://www.domain.de/index.php?page=seite

Was ist wenn jemand ganz liebes folgende URL aufruft:
https://www.domain.de/index.php?page=.. ... /passwd%00
was passiert dann?
und wehe es sagt jetzt jemand: "ich hoffe das magic_quotes_gpc ON ist"
Das wäre eine relativ simpler Angriff.

besser:
<?php
$allowedFiles = array('page1.php', 'page2.php'.....);
if (in_array($_GET['page'], $allowedFiles))
include ($_GET['page']);
else
echo 'Go away you damn Fucker';

?>