2016-06-22 8 views
0

Ich erstellte ein Skript und ich wählte Daten aus meiner Datenbank und erstellte eine Datei für jeden der Datenbank-Ausgabe. Wie Sie unten sehen können, ist $home eine Variable zu meinem Stammordner zugeordnet:Erstellt Datei zeigt verboten 403 Fehler

<?php 
$home = "http://localhost"; 
include $home.'/connect.php'; 

$query = mysqli_query($con, "SELECT * FROM tags"); 
$mysql = mysqli_num_rows($query); 
while($sql = mysqli_fetch_array($query)){ 
    $tags[] = $sql['tag_names']; 
} 

foreach($tags as $tag){ 
$dir = $home."/forums/tags/".$tag; 
$file_to_create = "index.php"; 
$file_content = "<?php include '".$home."/all_tags.php'; ?>"; 

    if(mkdir($dir)){ 
     $file = fopen($dir.'/'.$file_to_create,"w"); 
     fwrite($file, $file_content); 
     fclose($file); 
    } 
} 

?> 

Jetzt funktioniert alles einwandfrei und meine Ordner mit der Indexdatei in ihnen und den Inhalt schreiben für jede erstellt. Aber mein Problem ist das, zu jeder Zeit ich versuche, die Indexdatei in meinem Browser zu öffnen, bekomme ich immer diese Fehlermeldung für alle Ordner

Verbote: Sie haben keine Berechtigung zum Zugriff auf/Foren/tags/tag_name auf diesem Server

Bitte haben Sie eine Idee, warum ich diesen Fehler bekomme? Ich verwende einen WAMP lokalen Server auf meinem PC

Antwort

1

Es gibt kein Problem mit Codes, das Problem mit der Erlaubnis der Datei oder dem Ordners liegt, ändern Sie Ihre Datei und Ordner-Berechtigung

chmod -R 755 Ordner/um die Berechtigung des Ordners sowie Dateien innerhalb des Ordners zu ändern.

Führen Sie die chmod-Modusfunktion im Terminal aus, aber vergessen Sie nicht, das Verzeichnis in den richtigen Ordner zu ändern.

Von dem, was ich Forschung zuvor habe, ist Ordner-Berechtigung normalerweise 755, während Dateierlaubnis 644 ist, aber es als 755 zu lassen, wird gut funktionieren.

ich nur realisiert werden Sie verwenden wamp, die für Fenster,

  • können Sie einen Rechtsklick auf die PHP-Dateien
  • unter Eigenschaften gehen und zu Sicherheitsvorsprung gehen.
  • klicken Sie auf Bearbeiten und geben Sie lesen, schreiben und ausführen für Benutzer und lesen, für Gruppe und andere ausführen.
0

Überprüfen Sie die Berechtigungen für die Datei selbst. Unter Windows klicken Sie mit der rechten Maustaste auf die Datei, gehen Sie zu den Eigenschaften, und auf der Registerkarte Sicherheit können Sie die Berechtigungen bearbeiten. Wenn ich mich nicht um die Sicherheit kümmern muss, erlaube ich: "Modify", "Read & execute", "Read" und "Write". Für SYSTEM erlauben Sie auch "Volle Kontrolle".

Ich spreche aus Erfahrung mit einem Linux-Server, und als ich eine 403 bekam, fand ich, dass dies der Fall war.