hey
ich brauch einmal hilfe bei der konfiguration meiner htaccess datei.
ich habe einen normalen apache server mit xampp lokal bei mir aufgesetzt und ein kleines php projekt, hier die struktur:
~/index.php, .htaccess
~/login/login.html, login.php, logout.php
~/css/default.css
~/js/default.js, ...
~/seite/seite.php, seiteA.html, seiteB.html
das ist in etwa der Aufbau
------------------------------------------------------
ich binde auf der index.php die login.html ein, wenn der user noch nicht eingeloggt ist, ansonsten die seite.php
------------------------------------------------------
die login.html enthält ein einfaches formular, dass beim absenden die Daten via post an die php Datei übergibt.
------------------------------------------------------
Ich habe in der htaccess via Modrewrite Regeln gesetzt.
beispiel URL: localhost/seiteA.htm entspricht dann etwa localhost/?Link=seiteA
dann wird via include die seiteA.html eingebunden
------------------------------------------------------
Meine .htaccess
------------------------------------------------------
Mein Ziel: ich will usern den direkten Zugriff auf die Ordner und Dateien untersagen.
Mit dem rot markierten Regeln klappt es schon sehr gut,
leider können die Formulare nicht auf die .php Dateien zugreifen.
Ich hoffe ich konnte mein Problem verständlich darlegen und freue mich auf eure Antworten.
Gruß
Kaito
---------------------------------------
Edit1:
nach einigem weiterem googlen fand ich diesen netten ansatz:
leider können die .php Dateien noch direkt aufgerufen werden
ich brauch einmal hilfe bei der konfiguration meiner htaccess datei.
ich habe einen normalen apache server mit xampp lokal bei mir aufgesetzt und ein kleines php projekt, hier die struktur:
~/index.php, .htaccess
~/login/login.html, login.php, logout.php
~/css/default.css
~/js/default.js, ...
~/seite/seite.php, seiteA.html, seiteB.html
das ist in etwa der Aufbau
------------------------------------------------------
ich binde auf der index.php die login.html ein, wenn der user noch nicht eingeloggt ist, ansonsten die seite.php
------------------------------------------------------
die login.html enthält ein einfaches formular, dass beim absenden die Daten via post an die php Datei übergibt.
------------------------------------------------------
Ich habe in der htaccess via Modrewrite Regeln gesetzt.
beispiel URL: localhost/seiteA.htm entspricht dann etwa localhost/?Link=seiteA
dann wird via include die seiteA.html eingebunden
------------------------------------------------------
Meine .htaccess
Code:
ErrorDocument 404 localhost/?Error=404
ErrorDocument 403 localhost/?Error=403
ErrorDocument 500 localhost/?Error=500
RewriteEngine On
# RewriteRule ^([^/]*)\.htm$ /?Link=$1 [L]
RewriteRule ^Problem/([^/]*)$ /?Problem=$1 [L]
RewriteRule ^([^/]*)/([^/]*)/([^/]*)/([^/]*)\.html$ /?Link=$1&Category=$2&ID=$3&Admin=$4 [L]
IndexIgnore *
Options -Indexes
<Files ~ "\.(php|html)$">
order deny,allow
deny from all
allow from localhost
</Files>
<Files ~ "index.php">
Allow from all
</Files>
Mein Ziel: ich will usern den direkten Zugriff auf die Ordner und Dateien untersagen.
Mit dem rot markierten Regeln klappt es schon sehr gut,
leider können die Formulare nicht auf die .php Dateien zugreifen.
Ich hoffe ich konnte mein Problem verständlich darlegen und freue mich auf eure Antworten.
Gruß
Kaito
---------------------------------------
Edit1:
nach einigem weiterem googlen fand ich diesen netten ansatz:
Code:
# disable directory browsing Options All -Indexes # secure directory by disabling script execution AddHandler cgi-script .php .html .js Options -ExecCGI
Kommentar