htaccess - PHP-Dateien NICHT parsen lassen. |
Philipp Gérard
Foren-Team Threadstarter
Beiträge: 1502 |
Servus!
Ich möchte nicht, dass auf meinem Server in bestimmten Unterordnern PHP-Dateien geparst werden, sie sollen hingegen als Plain-Text angezeigt werden. Wie geht das mit .htaccess-Dateien?
Danke
---
Arbeit ist das Feuer der Gestaltung. - Marx
|
 Profil
E-Mail
Website
Editieren
Zitieren
|
languitar
Foren-Team
Beiträge: 2795 |
Ich ahne was du machen willst. ;) Lass die Endung PHP doch einfach per htaccess in html oder txt umwandeln...
|
 Profil
Editieren
Zitieren
|
Philipp Gérard
Foren-Team Threadstarter
Beiträge: 1502 |
wie?
---
Arbeit ist das Feuer der Gestaltung. - Marx
|
 Profil
E-Mail
Website
Editieren
Zitieren
|
m3rlin
Quasselstrippe
Beiträge: 264 |
|
 Profil
Editieren
Zitieren
|
Philipp Gérard
Foren-Team Threadstarter
Beiträge: 1502 |
ne, das ist ja für alle. aber egal, die frage ändert sich hiermit
wie kann ich erzwingen, dass alle .php-dateien mit vollem pfad (z.b. /foo/dir/index.php) an eine bestimmte datei (display/index.php?file=_FILE_) gesendet werden? es sollen nur php-dateien aus den verzeichnissen:
classes, functions, misc, libs
umgeleitet werden
---
Arbeit ist das Feuer der Gestaltung. - Marx
Diese Nachricht wurde geändert von: Philipp Gérard |
 Profil
E-Mail
Website
Editieren
Zitieren
|
Marcus
Forenheld
Beiträge: 880 |
|
 Profil
E-Mail
Editieren
Zitieren
|
Philipp Gérard
Foren-Team Threadstarter
Beiträge: 1502 |
ja sowas, das gilt aber nicht nur für einen ordner und nicht nur für php-dateien
---
Arbeit ist das Feuer der Gestaltung. - Marx
|
 Profil
E-Mail
Website
Editieren
Zitieren
|
heuser
Pixelschubser
Beiträge: 3 |
Hi!
nimm' doch einfach die Endung .phps
Dann sollte bei einer "normalen" Konfiguration der Quelltext ausgegeben werden. Sogar nett eingefärbt
http://www.bam-bam.de/test1/test.phps
viele Grüße
Frank
|
 Profil
Editieren
Zitieren
|
Philipp Gérard
Foren-Team Threadstarter
Beiträge: 1502 |
Hallo Frank,
das stimmt - habe ich auch schon getestet, nur bricht phps immer kurz vorm Ende ab und gibts nicht die ganze Datei aus. Jedenfalls auf meinem Server
---
Arbeit ist das Feuer der Gestaltung. - Marx
|
 Profil
E-Mail
Website
Editieren
Zitieren
|
c3o
Posting-Schinder
Beiträge: 585 |
Das müsste so gehen:
(.htaccess im Grundverzeichnis)
RewriteEngine on
RewriteRule ^(.*(classes|functions|misc|libs)/.*\.php)$ /display?file=$1
http://domain.tld/narf/classes/bla.php -> http://domain.tld/display?file=narf/classes/bla.php
http://domain.tld/hurra/libs/bla.php -> http://domain.tld/display?file=hurra/libs/bla.php
Wenn der Teil vorne (narf, hurra) nicht austauschbar sein muss, es also nur 1 Verzeichnis classes gibt wo das funktionieren soll (ist aus deinem Posting nicht klar hervorgegangen), nimm das erste Vorkommen von .* raus, gibs in die .htaccess ein Verzeichnis über /classes, /functions usw. und nimm den Schrägstrich vor display weg.
Diese Nachricht wurde geändert von: c3o |
 Profil
E-Mail
Website
Editieren
Zitieren
|
Philipp Gérard
Foren-Team Threadstarter
Beiträge: 1502 |
ei, das ist ein anfang, danke, aber ich habe es schlecht formuliert:
die ordnerstruktur ist wie folgt:
1:
2:
3:
4: | /classes/irgendeinordner/einephpdatei.php
/libs/irgendeinordner/einephpdatei.php
/functions/irgendeinordner/einephpdatei.php
/misc/irgendeinordner/einephpdatei.php |
irgendeinordner kann auch ganz anders heißen und muss somit variabel sein
und nun soll aus dieser datei folgendes gemacht werden:
/display/?file=/misc/irgendeinordner/einephpdatei.php
oder halt /classes/functions/libs anstelle von misc.
danke!
---
Arbeit ist das Feuer der Gestaltung. - Marx
Diese Nachricht wurde geändert von: Philipp Gérard |
 Profil
E-Mail
Website
Editieren
Zitieren
|
c3o
Posting-Schinder
Beiträge: 585 |
Ja, das geht ansich eh schon wies oben war.
RewriteEngine on
RewriteRule ^((classes|functions|misc|libs)/.*\.php)$ /display/?file=/$1
Zur Erklärung:
Das Format ist: RewriteRule RegularExpression ZielURL
Und diese RegExp im Detail bedeutet:
^ = Anfang des Strings
( ) = der eingeklammerte Teil steht nachher als Variable, $1, zur Verfügung
x|y = x oder y
/ = das Zeichen Schrägstrich (also keine spezielle Bedeutung)
.* = beliebige Zeichen, beliebig oft
\. = das Zeichen Punkt, maskiert damit es nicht "beliebiges Zeichen" heißt
$ = Ende des Strings
Ich <3 Regular Expressions.. jedenfalls seitdem ich sie endlich halbwegs kann Da vermisst man echt die Möglichkeit, zB Google oder Word-Dokumente so zu durchsuchen...
Diese Nachricht wurde geändert von: c3o |
 Profil
E-Mail
Website
Editieren
Zitieren
|
Philipp Gérard
Foren-Team Threadstarter
Beiträge: 1502 |
tausend dank - es scheint zu klappen, auch wenn mein script nicht mitmacht. aber das wird schon
---
Arbeit ist das Feuer der Gestaltung. - Marx
|
 Profil
E-Mail
Website
Editieren
Zitieren
|
Philipp Gérard
Foren-Team Threadstarter
Beiträge: 1502 |
so, klappt! tausend dank c3o und alle anderen hilfsbereiten
---
Arbeit ist das Feuer der Gestaltung. - Marx
|
 Profil
E-Mail
Website
Editieren
Zitieren
|