LiAn: htaccess in unterverzeichnis

Grüezi miteinander,

ich habe in einem unterordner (/cms) ein cms installiert. dieser ordner wird per htaccess und htpasswd geschützt. nun will ich auf daten, die in dem unterordner (/cms) liegen, zugreifen. und zwar so:

im <head>

  
// bof Einstellungen  
$menuId = 5;  
$tmplt = 'holzlexikon';  
// eof Einstellungen  
/**/  
include("cms/includes/config.php");  
  
$con=mysql_Connect($hostname,$dbUser,$dbPW)  
     or die( "Die Verbindung zur Datenbank kann momentan nicht aufgebaut werden." );  
     mysql_select_db( $dbname, $con );  
  
$result = mysql_query( "SELECT * FROM $tmplt WHERE menuId='$menuId'", $con )  
     or die( "Fehler bei Query: " . mysql_error( $con ) );  
  
while ($row = mysql_fetch_array($result)) {  
  $reihenfolge = $row["reihenfolge"]; //  
  $bild = utf8_encode($row["Bildname_nameB"]); //  
  $titel = utf8_encode($row["feldA"]); //  
  $text = utf8_encode($row["feldB"]);//  
}  
mysql_FreeResult($result);  
mysql_Close($con);  
?>  

und im <body>

  
<?php  
  $con=mysql_Connect($hostname,$dbUser,$dbPW)  
     or die( "Die Verbindung zur Datenbank kann momentan nicht aufgebaut werden." );  
     mysql_select_db( $dbname, $con );  
  
$result = mysql_query( "SELECT * FROM $tmplt WHERE menuId='$menuId'", $con )  
 or die( "Fehler bei Query: " . mysql_error( $con ) );  
  
  while ($row = mysql_fetch_array($result)) {  
         $reihenfolge = $row["reihenfolge"]; //  
   $bild = utf8_encode($row["Bildname_nameB"]); //  
   $titel = utf8_encode($row["feldA"]); //  
   $text = utf8_encode($row["feldB"]);//  
  
         echo "<p><a href='#' title='".$titel."'>".$titel."</a></p>";  
  }  
  mysql_FreeResult($result);  
  mysql_Close($con);  
        ?>  

wenn ich die seite nun im browser öffne, verlangt er das passort und den username, den ich für das cms definiert habe. kann mir jemand sagen, wie ich das verhindern kann? will ja nicht, dass der user passwort und username eingeben muss, nur um die seite zu sehen. wäre sehr froh, um jede hilfe.

  1. Hi,

    ich habe in einem unterordner (/cms) ein cms installiert. dieser ordner wird per htaccess und htpasswd geschützt. nun will ich auf daten, die in dem unterordner (/cms) liegen, zugreifen. und zwar so:

    include("cms/includes/config.php");

    Das ist die einzige Stelle, wo ich dich auf Inhalte unterhalb von /cms/ zugreifen sehe.
    Das passiert aber uebers Dateisystem des Webservers, da ist HTTP also gar nicht im Spiel - also auch kein HTTP Auth.

    und im <body>
    [...]
    $result = mysql_query( "SELECT * FROM $tmplt WHERE menuId='$menuId'", $con )

    Ist das eigentlich noch mal die selbe Abfrage wie oben im head schon?

    wenn ich die seite nun im browser öffne, verlangt er das passort und den username, den ich für das cms definiert habe. kann mir jemand sagen, wie ich das verhindern kann?

    In dem du keine Inhalte in die Seite einbaust, die der Client von unterhalb /cms/ abrufen soll - also bspw. Bilder, Scripte, CSS, ...
    Leider ist in deinem Code nicht erkennbar, wo du das tust, also auch die Ursache fuer dein Problem nicht ermittelbar - da musst du also selber nachschauen.

    MfG ChrisB

    --
    „This is the author's opinion, not necessarily that of Starbucks.“