Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как защитить?
 
 автор: Shorr Kan   (18.01.2005 в 07:31)   письмо автору
 
 

В моем скрипте есть корневая директория скрипта, и три подкаталога. Кое-как файлы защищены, но, тем не менее, если в адресной строке набрать точный путь к файлу в подкаталоге моего скрипта - файл выдается на экран. Как можно защитить это, но, желательно, избежав htaccess, и подобных серверных технологий?

К сожалению, я плохо знаком с серверной работой - со всеми этими правами доступа, и так далее. К примеру, если я правами доступа добиваюсь того режима, при котором файлы действительно защищены - их нельзя увидеть через браузер - тогда не работает сам скрипт. И наоборот - если права таковы, чтобы скрипт работал - тогда все можно увидеть и через браузер...

Что можно сделать? Во-первых, с первой проблемой - конкретно, как решить это, избегая серверных вещей... Во-вторых - может ли кто-нибудь попробовать объяснить с этими правами доступа... а то я как ни читал - ну не доходит...

   
 
 автор: glsv (Дизайнер)   (18.01.2005 в 10:23)   письмо автору
 
   для: Shorr Kan   (18.01.2005 в 07:31)
 

>Как можно защитить это, но, желательно, избежав htaccess, и подобных серверных технологий?

Хм… но нельзя защитить скрипты избегая серверных технологий. Поясню. Ваши файлы лежат на сервере и выполняются сервером. И потому защитить их можно только серверными технологиями.
А почему Вы против файлов .htaccess. Ведь это как раз самый простой способ защиты.
Например, чтобы не допустить вывода файла через браузер нужно создать файл .htaccess в защищаемой директории и написать там директивы
<Files config.txt>
deny from all
</Files>


После этого получить доступ к файлу config.txt из браузера будет невозможен.
У нас есть 2 статьи по файлам .htaccess. Нам кажется все очень доступно написано.
http://www.softtime.ru/info/articlephp.php?id_article=25
http://www.softtime.ru/info/articlephp.php?id_article=27
Что будет непонятно - спрашивайте.

>И наоборот - если права таковы, чтобы скрипт работал - тогда все можно увидеть и через браузер...

Хм... возможно все. Нужно смотреть логику работы скрипта.

   
 
 автор: Shorr Kan   (18.01.2005 в 12:33)   письмо автору
 
   для: glsv (Дизайнер)   (18.01.2005 в 10:23)
 

Меня не устраивает htaccess тем, что я не знаю, на каких серверах будет использоваться мой скрипт. Соответственно, неизвестно, будет ли он работать.
Что ж, вы очень четко все объяснили, большое спасибо. Один только вопрос - если htaccess НЕ поддерживается - он просто игнорируется, или выдается ошибка?

   
 
 автор: cheops   (18.01.2005 в 13:52)   письмо автору
 
   для: Shorr Kan   (18.01.2005 в 12:33)
 

Хм... такой сервер сложно встретить, если всё-таки вам удасться встретить такой сервер, то он в первую очередь не будет поддерживать PHP.

   
 
 автор: glsv (Дизайнер)   (19.01.2005 в 00:39)   письмо автору
 
   для: Shorr Kan   (18.01.2005 в 12:33)
 

>Один только вопрос - если htaccess НЕ поддерживается - он просто игнорируется, или выдается ошибка?

.htaccess – это конфигурационный файл только для WEB-сервера Apache. Остальные сервера про него не знают и соответственно ошибки не будет.
И если использование .htaccess "не разрешено" в Apache (это возможно), то в этом случае можно писать в нем все что угодно. Результата не будет никакого. Apache просто не будет читать это файл.

   
 
 автор: cheops   (19.01.2005 в 01:15)   письмо автору
 
   для: glsv (Дизайнер)   (19.01.2005 в 00:39)
 

Вообще говоря многие знают, так как apache практически стандарт, многие вынуждены его поддерживать...

   
 
 автор: glsv (Дизайнер)   (19.01.2005 в 01:43)   письмо автору
 
   для: cheops   (19.01.2005 в 01:15)
 

IIS, например, не поддерживает.

   
 
 автор: XPraptor   (18.01.2005 в 12:52)   письмо автору
 
   для: Shorr Kan   (18.01.2005 в 07:31)
 

А какие файлы ты хочешь защитить? В смысле php или обычные html? Если php то просто пиши в каждом этом файле в начале код который будет проверять определенную переменную инициализированную в главном скрипте. Например в главном скрипте ты пишешь:

<?php
$is_my_script
=1;
include(
"защищенный файл.php");
?> 

а в защищенном в самом верху:

<?php
if(!isset($is_my_script) || $is_my_script!=1)
{
тут редирект на фиг...
}
?>

   
 
 автор: Shorr Kan   (18.01.2005 в 13:27)   письмо автору
 
   для: XPraptor   (18.01.2005 в 12:52)
 

А если .txt ?

   
 
 автор: glsv (Дизайнер)   (19.01.2005 в 00:52)   письмо автору
 
   для: Shorr Kan   (18.01.2005 в 13:27)
 

Хм... так как это файл все должен использоваться скриптами (я так понимаю), то для того чтобы запретитить его выдавать в браузере - нужно "попросить" об этом WEB-сервер. Т.е. привязка к типу сервера.

PS: если Вы пишите на PHP, то 99.9%, что они будут выполняться на Apache. Если не хотите полагаться на .htaccess, настройки и права доступа конкретного сервера, то используйте базу данных. Логины, пароли, защищаемую инфу храните там. Наверное, это и будет решением.

   
 
 автор: Nikola   (04.07.2005 в 12:30)
 
   для: glsv (Дизайнер)   (19.01.2005 в 00:52)
 

Конечно, хранить защищаемую информацию в базе данных это вариант. Но! Интересно, где вы предполагаете хранить логин и пароль доступа к самой базе данных???

   
 
 автор: Loki   (04.07.2005 в 17:27)   письмо автору
 
   для: Nikola   (04.07.2005 в 12:30)
 

В php файле. Его-то просмотреть нельзя (если он грамотно составлен).

Собственно, все txt файлы можно так же переименовать в php и отображать их только если в них передана определенная переменная. В общем, простейшая авторизация.
Ну а бинарные файлы защищать придется средствами сервера.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования