it-swarm.com.de

Installieren eines PHP Frameworks auf einem Host ohne public_html- oder www-Ordner (ftp ist DocumentRoot)

Ich habe ein PHP Framework entwickelt, das mit der Verzeichnisstruktur von arbeitet

/  
/classes/  
/templates/  
/.../  
/www/ (public_html)

Ich bin jedoch auf einen Host gestoßen, der nur FTP für den DocumentRoot zulässt, sodass dies ein Sicherheitsrisiko für meine Skripte darstellt. Ich möchte nicht, dass das Stammverzeichnis der Website auf das Stammverzeichnis verweist, in dem sich mein Framework befindet.

Ich habe eine Frage über bei Stackoverflow mit einer Frage an ein .htaccess-Umschreibprogramm gestellt, um dies möglicherweise zu lösen

Gibt es dafür eine bessere Methode?

4
StrikeForceZero

Vermutlich müssen Sie nur den HTTP-Zugriff auf diese Ordner blockieren (HTTP-Statuscode 403 - Verboten zurückgeben), wenn diese im Stammverzeichnis des Dokuments gespeichert sind. In der .htaccess-Datei Ihres Dokumentstamms:

# Block HTTP access to certain folders
RewriteRule ^classes/.* - [F]
RewriteRule ^templates/.* - [F]

(... und bauen Sie Flexibilität in Ihr Framework ein, damit sich Ihr Framework auf derselben Ebene wie das öffentliche HTML befindet.)

Wenn ich Ihre andere/alternative Frage richtig verstehe ... kann ich keinen Nutzen daraus ziehen, zu versuchen, gefälscht einen Dokumentenstamm mithilfe von Umschreiberegeln zu erstellen. Vermutlich ist dies die Verzeichnisstruktur beizubehalten? Ich denke nicht, dass dies mehr Sicherheit bringt und nur eine zusätzliche Komplexitätsebene einführt.

4
MrWhite

Die bessere Lösung besteht darin, so zu codieren, dass von niemandem, der diese Dateien anfordert, ein Sicherheitsrisiko ausgeht. Denken Sie daran, dass Sie Ihre Dateien in codieren können, da PHP serverseitig interpretiert wird Geben Sie ein leeres Dokument zurück oder leiten Sie es auf Anforderung an eine andere Stelle weiter.

Dies ist, was Wordpress tut. Fragen Sie nach Dateien, die Sie nicht benötigen, und der Browser zeigt lediglich ein leeres Dokument an. Selbst wenn Sie nach wp-config.php fragen, der Standarddatei mit den vertraulichsten Zugriffsinformationen, erhalten Sie einfach nichts.

3
Itai