Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Как ограничить доступ к файлам

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): [1] 2 »   

> Описание: .htaccess
ПТО
Отправлено: 01 Августа, 2012 - 08:44:26
Post Id



Посетитель


Покинул форум
Сообщений всего: 395
Дата рег-ции: Янв. 2012  


Помог: 3 раз(а)




У меня проблема. Если в адресной строке набрать точный путь к файлу, например, mySite/someFolder/phpFile.php
то откроется это файл. Почему-то я думал, что все работает через индекс.php, если правильно прописать .htaccess.
Вот что прописано у меня:
Спойлер (Отобразить)


Подскажите пожалуйста, что надо прописать, чтобы при обращении к конкретному файлу, все равно бы открывался index.php
Всем спасибо заранее за ответы!
 
 Top
EuGen Администратор
Отправлено: 01 Августа, 2012 - 08:54:23
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




ПТО пишет:
RewriteCond %{REQUEST_FILENAME} !-f

Уберите эту строку.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
ПТО
Отправлено: 01 Августа, 2012 - 08:58:03
Post Id



Посетитель


Покинул форум
Сообщений всего: 395
Дата рег-ции: Янв. 2012  


Помог: 3 раз(а)




Сайт перестал работать вообще. Выводит только начальное содержимое
Без стилей, без ничего
 
 Top
EuGen Администратор
Отправлено: 01 Августа, 2012 - 09:02:04
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




ПТО
Разумеется перестал. Ведь теперь все стили при их запросе (а он происходит каждый раз, когда в документе встречается ссылка на стиль) или картинки - или любые другие файлы - все порождают вызов сервером index.php вместо того, чтобы отдавать их как есть. Так что Вам нужно определиться.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
ПТО
Отправлено: 01 Августа, 2012 - 09:06:57
Post Id



Посетитель


Покинул форум
Сообщений всего: 395
Дата рег-ции: Янв. 2012  


Помог: 3 раз(а)




Файлы *.php отдаются пустые, ведь? Т.к. код в них переваривается сервером, не так ли? я что боюсь-то, нельзя ли как нибудь скомуниздить .php файлы и находящиеся в них скрипты??
 
 Top
EuGen Администратор
Отправлено: 01 Августа, 2012 - 09:18:25
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




ПТО
Нет, исходный текст увидеть при обращении нельзя. Для того и нужен собственно веб-сервер, чтобы отдавать интерпретированные результаты. Если у кого-либо получилось забрать исходный текст Вашего скрипта - то уже никакой .htaccess не поможет.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
DelphinPRO
Отправлено: 01 Августа, 2012 - 12:34:46
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




оставляете htaccess как было

в index.php определяете константу

в остальных файлах, к которым не должно быть прямого доступа в самом начале проверяете


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
EuGen Администратор
Отправлено: 01 Августа, 2012 - 12:36:11
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




DelphinPRO
Плохо, если в системе счет идет хотя бы на сотни файлов. И не масштабируемо нисколько.
Тогда уж можно специально Rewrite-исключение делать.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
ПТО
Отправлено: 01 Августа, 2012 - 15:19:11
Post Id



Посетитель


Покинул форум
Сообщений всего: 395
Дата рег-ции: Янв. 2012  


Помог: 3 раз(а)




DelphinPRO пишет:
оставляете htaccess как было

в index.php определяете константу

в остальных файлах, к которым не должно быть прямого доступа в самом начале проверяете


Не плохой совет. Я думал о похожем, но немного о другом.
Спойлер (Отобразить)
Т.е. смотрим, есть ли в УРЛ хотя бы что-нибудь с *.php - если есть - тогда выкидываем в корень сайта))

Что скажете, насчет еще каких-нибудь вариантов? Вообще, получается я могу добраться до любого файла на любом сайте?
В целом я эту проблему поднял, так как меня беспокоит, что при открытии одиночных файлов всплывает (при просмотре исходного кода страницы) undefined index ... in (папка с файлами, строка такая-то). Влияет ли это на безопасность?
 
 Top
Hawkmoth
Отправлено: 01 Августа, 2012 - 15:31:54
Post Id


Посетитель


Покинул форум
Сообщений всего: 329
Дата рег-ции: Янв. 2012  


Помог: 6 раз(а)




ПТО пишет:
при открытии одиночных файлов всплывает (при просмотре исходного кода страницы) undefined index ... in (папка с файлами, строка такая-то). Влияет ли это на безопасность?


Любое сообщение об ошибке, видимое пользователю, будь то даже нотайс - потенциальная дыра в безопасности, не говоря уже об эстетических вещах.
Всегда пользовался способом, озвученным DelphinPRO - предопределенной константой. Замечание Юджина заставило задуматься, но в моих скромных масштабов проектах этого вполне хватает.
 
 Top
ПТО
Отправлено: 01 Августа, 2012 - 15:40:21
Post Id



Посетитель


Покинул форум
Сообщений всего: 395
Дата рег-ции: Янв. 2012  


Помог: 3 раз(а)




EuGen пишет:
Тогда уж можно специально Rewrite-исключение делать
Поясни, пожалуйста
 
 Top
DelphinPRO
Отправлено: 01 Августа, 2012 - 16:11:46
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




EuGen пишет:
Плохо, если в системе счет идет хотя бы на сотни файлов


Почему?
в Joomla около 5000 файлов, и используется такой способ. Во многих других CMS то же самое.


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
EuGen Администратор
Отправлено: 01 Августа, 2012 - 16:17:43
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




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


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
DelphinPRO
Отправлено: 01 Августа, 2012 - 16:23:04
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




EuGen, ну это не аргумент против такого способа Улыбка
в конце концов можно за пару минут написать скриптик, который пробежится по файлам и сам все добавит )

с тем, что следует располагать файлы выше документ_рут - согласен. Лучшее решение.


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
ПТО
Отправлено: 01 Августа, 2012 - 16:26:23
Post Id



Посетитель


Покинул форум
Сообщений всего: 395
Дата рег-ции: Янв. 2012  


Помог: 3 раз(а)




DelphinPRO пишет:
с тем, что следует располагать файлы выше документ_рут - согласен. Лучшее решение.

Это как это??? Взять все файлы и перебросить их куда-то?? Работать будет?
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB