Frage

Ich habe ein Skript geschrieben, das die Zusammenfassung der Bestellung und speichert in in eine XML-Datei, außer dem Problem führt, dass ich Menschen die XML-Datei in ihrem Browser zu öffnen, um die Lage sein, nicht will, natürlich.

Ich bin auf einen sehr fragwürdigen Shared Server mit begrenzten Fähigkeiten gehostet. Ohne SSH, für den Anfang

Gibt es einen Ort, wo ich diese Datei setzen kann, so dass PHP noch in der Lage sein wird / schreiben, um es zu lesen, aber Web-Browser nicht in der Lage sein, um es zu bekommen?

Normalerweise würde ich einen Ordner außerhalb des Document-Root erstellen und ihn dort, aber ich erhalte einen „Zugriff verweigert“ angezeigt, wenn ich das versuchen.

Die Ordner, die sind sind:

  • anon_ftp
  • ist
  • cert
  • cgi-ist
  • conf
  • error_docs
  • etc
  • httpdocs-
  • httpsdocs
  • pd
  • privat
  • Statistiken
  • Subdomains
  • web_users

PHP kann nicht auf die Datei zugreifen, wenn sie im private Ordner ist. Wäre dies möglich, unter Verwendung von .htaccess?

War es hilfreich?

Lösung 2

Ich arbeitete um es durch die XML-Datei in meinem httpdocs Ordner setzen, fügte aber hinzu, eine .htaccess-Datei mit diesem in ihm:

<Files ~ "myfile.xml">
    Order allow,deny
    Deny from all
</Files>

Andere Tipps

Sie können ein Verzeichnis eine Datei erstellen .htaccess enthält, die etwa wie folgt aussieht:

Deny from all

Dies wird Apache anweisen, keine Dateien aus diesem Verzeichnis zu dienen; alle Versuche, das Verzeichnis oder dessen Inhalt mit einer „403 Forbidden“ Antwort vom Server erfüllt werden zugreifen zu können.

Hinweis: Dies hängt von der Host nicht entfernt Limit aus der Liste der Optionen in ihrer AllowOverride Richtlinie hat; die meisten gemeinsamen Rechner sollten keinen Grund haben, dies zu tun.

Könnten Sie nicht bitten, den Shared-Hosting-Provider einen Außen-Web-Root-Ordner für Sie erstellen ? Ich habe sicherlich dies in der Vergangenheit getan hat.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top