Автор Тема: Как сделать скрипты доступными только через include()  (Прочитано 3853 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Daiz13

  • наблюдатель
  • Постоялец
  • ***
  • Сообщений: 150
  • +0/-0
  • 2
    • Просмотр профиля
    • http://rg.com.ua/
Можно ли как-нибудь сделать файлы доступными только для include и запретить их запуск через адресную строку браузера?
Есть возможность как-то определить был ли скрипт запущен или его проинклудили?

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
в папку со скриптами, которые include-ятся вставляешь .htaccess с содержанием:
deny from all

Или можно выложить эти файлы в папку, недоступную по www
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн GotZfild

  • Универсал
  • Старожил
  • ****
  • Сообщений: 456
  • +0/-0
  • 2
    • Просмотр профиля
    • http://myphp.dem.ru
Можно также вставить в подключаемый файл проверку переменной $REQUEST_URI с именем файла, в который подключается, т.е.
if (basename($REQUEST_URI) != "main.php") exit;
После трех дней без программирования жизнь становится бессмысленной.

Оффлайн AlieN

  • Абыр!=)
  • Ветеран
  • *****
  • Сообщений: 1315
  • +0/-1
  • 2
    • Просмотр профиля
Daiz13
Можно сделать специальное расширение для инклюдов
или сделать их исполняемыми
The Chemical Brothers - Hey Boy Hey Girl (User Friendly Mix)
Peter Presta pres - Set Sail(Peter Presta Apple Jaxx Dub) She S.Sunshine Feat Mila - Bring The Beat Back (Club Mix) Jerry Ropero - Home Alone (Dub Mix)

Оффлайн Dm

  • Модератор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1263
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
в основном скрипте определяется константа, а в include файлах происходит проверка на ее наличие.
с уважением,
магистр белой магии.

Оффлайн GotZfild

  • Универсал
  • Старожил
  • ****
  • Сообщений: 456
  • +0/-0
  • 2
    • Просмотр профиля
    • http://myphp.dem.ru
Dm
Цитировать
в основном скрипте определяется константа, а в include файлах происходит проверка на ее наличие.

Так ему не нужен здесь основной скрипт. Ему ведь нужно проверить не то, что файл был подключен в данном скрипте, а то, что файл должен быть подключен извне.
После трех дней без программирования жизнь становится бессмысленной.

Оффлайн Metaller

  • Мелкое злобное существо
  • Ветеран
  • *****
  • Сообщений: 538
  • +0/-0
  • 2
    • Просмотр профиля
    • http://michael.pp.ru
GotZfild
А это разве не проверка???
Everybody\'s Got A Ticket To Ride Except For Me And My Lightning...

Оффлайн Daiz13

  • наблюдатель
  • Постоялец
  • ***
  • Сообщений: 150
  • +0/-0
  • 2
    • Просмотр профиля
    • http://rg.com.ua/
А если эту переменную в адресной строке задать? Что тогда с этой проверкой?

Оффлайн bhor

  • Модератор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 767
  • +0/-0
  • 0
    • Просмотр профиля
Цитировать
А если эту переменную в адресной строке задать? Что тогда с этой проверкой?

не переменная, а константа.
Цитировать
определяется константа


В основном файле:

define
(\'kill_hackers\', true);

В файле который инклудится

if ( !defined(\'kill_hackers\') )
{
	
die("Hacking attempt");
}



[PHP]

Оффлайн GotZfild

  • Универсал
  • Старожил
  • ****
  • Сообщений: 456
  • +0/-0
  • 2
    • Просмотр профиля
    • http://myphp.dem.ru
Цитировать
А это разве не проверка???

Это проверка, но не на то, что надо. Что если файл вызвать, набрав URL в адресной строке броузера? Каким образом в этом случае задействуется главный файл, в котором стоит эта проверка?
После трех дней без программирования жизнь становится бессмысленной.

Оффлайн AlieN

  • Абыр!=)
  • Ветеран
  • *****
  • Сообщений: 1315
  • +0/-1
  • 2
    • Просмотр профиля
GotZfild
иклюде проверяет не переменная не инитиализирована и завершает своб работу
The Chemical Brothers - Hey Boy Hey Girl (User Friendly Mix)
Peter Presta pres - Set Sail(Peter Presta Apple Jaxx Dub) She S.Sunshine Feat Mila - Bring The Beat Back (Club Mix) Jerry Ropero - Home Alone (Dub Mix)

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28