PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks. |
 |

16-03-2005, 03:54
|
syco23
Member
|
|
Registriert seit: Dec 2002
Beiträge: 368
|
|
verhindern, dass inc-dateien direkt geöffnet werden
Hallo,
wie verhindere ich am besten dass include-dateien direkt geöffnet werden.
ich stelle mir eine abfrage in der art
if (echter_dateiname == aufgerufene_datei) die();
vor. aber wie finde ich den echten dateinamen raus?
Gruß,
syco23
__________________
.: 1+1=23 :.
Geändert von syco23 (30-10-2005 um 20:55 Uhr)
|

16-03-2005, 04:07
|
xManUx
Registrierter Benutzer
|
|
Registriert seit: Feb 2004
Beiträge: 833
|
|
PHP-Code:
<?php
function check_datei () {
IF ( eregi('inc.php',$_SERVER['PHP_SELF']) ) {
die();
}
}
?>
So zum Beispiel!
__________________
Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
sondern mit den Augen das Manual zu lesen.
|

16-03-2005, 07:57
|
Foggy
Junior Member
|
|
Registriert seit: Jan 2004
Beiträge: 60
|
|
Oder ganz einfach mit htaccess
|

16-03-2005, 10:44
|
loci
Junior Member
|
|
Registriert seit: Feb 2003
Ort: Saarland
Beiträge: 82
|
|
wieso ueberhaupt include dateien, welche php-code enthalten mit .inc und nicht sinnvollerweise richtig mit .php bezeichnen?
dann wuerde sich das problem nicht ergeben, da die funktionen innerhalb der datei ohne aufruf auch nicht ausgefuehrt werden.
ergebnis: eine leere anzeige - so wie gewuenscht.
|

16-03-2005, 12:57
|
frabron
Newbie
|
|
Registriert seit: Apr 2004
Beiträge: 113
|
|
Man kann die include Dateien auch ausserhalb des Webroots anlegen und somit sind sie auch vor unauthorisiertem Zugriff geschützt
|

16-03-2005, 13:33
|
xManUx
Registrierter Benutzer
|
|
Registriert seit: Feb 2004
Beiträge: 833
|
|
Zitat:
Original geschrieben von loci
wieso ueberhaupt include dateien, welche php-code enthalten mit .inc und nicht sinnvollerweise richtig mit .php bezeichnen?
dann wuerde sich das problem nicht ergeben, da die funktionen innerhalb der datei ohne aufruf auch nicht ausgefuehrt werden.
ergebnis: eine leere anzeige - so wie gewuenscht.
|
dateiname.inc.php !
__________________
Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
sondern mit den Augen das Manual zu lesen.
|

16-03-2005, 15:38
|
bpieper
Newbie
|
|
Registriert seit: Aug 2003
Beiträge: 11
|
|
in der hauptdatei define('SOME_SPECIAL',true);
in den include dateien if (!defined('SOME_SPECIAL')) {
header ('HTTP/1.1 404 Not Found');
echo "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n"
. "<html><head>\n<title>404 Not Found</title>\n</head><body>\n<h1>Not Found</h1>\n"
. "The requested URL " . $PHP_SELF . " was not found on this server.<p>\n<hr>\n"
. $_SERVER['SERVER_SIGNATURE'] . "</body></html>";
exit;
}
oda schlicht die();
|

16-03-2005, 15:44
|
asp2php
Banned
|
|
Registriert seit: Feb 2004
Beiträge: 11.745
|
|
bpieper, du kannst prüfen was du willst, es nützt nichts, wenn die Datei dateiname.inc heißt und .inc nicht - durch Einstellung von Apache/IIS/... - geparst wird
|

16-03-2005, 18:21
|
bpieper
Newbie
|
|
Registriert seit: Aug 2003
Beiträge: 11
|
|
die include dateien heissen whatever.inc.php
|

16-03-2005, 18:25
|
penizillin
PHP Guru
|
|
Registriert seit: Feb 2004
Beiträge: 10.166
|
|
bpieper
dann brauchst du auch keine konstante o.ä., denn üblicherweise beinhalten include dateien nur funktionen- und klassendeklarationen ohne jegliche ausgabe.
|

16-03-2005, 19:16
|
bpieper
Newbie
|
|
Registriert seit: Aug 2003
Beiträge: 11
|
|
was syco in den include dateien drin stehen hat kann ich so nicht erkennen. ich denke er wird wissen ob er ausgaben macht oder nicht und dann einen der vorschläge benutzen
|

16-03-2005, 19:56
|
xManUx
Registrierter Benutzer
|
|
Registriert seit: Feb 2004
Beiträge: 833
|
|
das beste wäre, er meldet sich mal zurück !
__________________
Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
sondern mit den Augen das Manual zu lesen.
|

17-03-2005, 00:03
|
syco23
Member
|
|
Registriert seit: Dec 2002
Beiträge: 368
|
|
PHP-Code:
function check_datei () {
IF ( eregi('inc.php',$_SERVER['PHP_SELF']) ) {
die();
}
}
diese Methode gefällt mir am besten
die Dateinamen enden natürlich auf inc.php
es sind auch einige darunter, die direkt code ausgeben und auch gewisse aufgaben ausfürhen wie z.B. Bilder speichern, header, etc.
htaccess wäre auch eine gute möglichkeit.
__________________
.: 1+1=23 :.
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Thema bewerten |
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|