| |
|
|
| | Нужно вот такого рода защита:
непосредственное обращение к определённым страницам в текущей папке (./) запретить, скажем через строку в браузере, но обращение через функцию require должно быть разрешено.
Вот такая задача! Как выполнить??? | |
| |
|
|
| |
|
|
| |
для: iriter
(26.03.2007 в 02:04)
| | | В начало каждого такого файла помещайте проверку
<?php
if(!defined("REQUIRE")) exit();
?>
|
А перед инструкцией require() определяйте константу REQUIRE
<?php
define("REQUIRE", 1);
?>
|
Если константа не определена, а при прямом обращении она определена быть не может, включаемый файл в самом начале прекращает свою работу. | |
| |
|
|
| |
|
|
| |
для: cheops
(26.03.2007 в 02:31)
| | | Где-то такое записано было, но я не нашел.
Можно в реальном примере показать? | |
| |
|
|
| |
|
|
| |
для: iriter
(26.03.2007 в 02:49)
| | | Хм... собственно - это реальный пример - можете просто вставить первое выражение во включаемый файл, а второе перед require() и всё начнёт работать. | |
| |
|
|
| |
|
|
| |
для: cheops
(26.03.2007 в 03:02)
| | | можно еще так поступить - вместо
<?php
if(!defined("REQUIRE")) exit();
?>
|
Написать
<?php
if(!defined("REQUIRE")) include ('404.php');
?>
|
Код 404.php
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL <?php echo $_SERVER['REQUEST_URI']?> was not found on this server.</p>
</body></html>
|
Это позволит нам сказть юзеру что такой папки иди файла просто нет - так отдастся сэмулированная стандартная ошибка сервера Апач | |
| |
|
|
| |
|
|
| |
для: mihdan
(26.03.2007 в 15:03)
| | | Всем спасибо! Будут еще вопросы - о вас не забуду :) ! | |
| |
|
|