|
|
|
| На многих сайтах применяется один и тот же скрипт. Чтобы его не тиражировать по числу сайтов, а заодно иметь возможность оперативно вносить в него доработки, я вывел его в файл с расширением TXT, положил на один сайт, а со всех остальных сайтов сделал вызов - eval(file_get_contents('путь_до_скрипта')).
Все отлично работает, а вопрос вот в чем - как сделать так, чтобы этот файл нельзя было прочитать, просто набрав его URL?
Менял права на файл, не вышло. Крутился с .htaccess, тоже никак - если я добиваюсь, что файл нельзя прочитать, набрав его URL, то его не могут прочитать и все мои сайты. | |
|
|
|
|
|
|
|
для: iramax
(21.05.2009 в 09:57)
| | Передавать в него логин и пароль | |
|
|
|
|
|
|
|
для: Loki
(21.05.2009 в 10:27)
| | Т.е. через GET? Файл же текстовый, проверку логина и пароля не сделать... | |
|
|
|
|
|
|
|
для: iramax
(21.05.2009 в 11:03)
| |
<? if ($_GET['pass']!='secretcode') exit; ?>
Я же обычный текстовый файл
|
| |
|
|
|
|
|
|
|
для: Loki
(21.05.2009 в 12:18)
| | Тогда файл со скриптом нужно делать не текстовым, а .php, либо в .htaccess прописывать, что txt-файлы могут исполнять php-скрипты. Так действительно можно защититься, но не полностью, ведь те, кто имеет доступ к файлам других сайтов, смогут узнать пароль. | |
|
|
|
|
|
|
|
для: iramax
(21.05.2009 в 13:58)
| | ip тогда проверяйте, шифруйте данные...
если на сторонних сайтах кто угодно имеет доступ к коду, то неважно как защищать - все равно это будет обходиться. | |
|
|
|
|
|
|
|
для: iramax
(21.05.2009 в 13:58)
| | Можно поступить следующим образом:
Подключаемый скрипт сохраняете в .php и подключаете его по include.
В самом же подключаемом скрипте делаете проверку на $_SERVER['SCRIPT_NAME'], или лучше даже на $_SERVER['SCRIPT_FILENAME']
Естественно, при подключении будет выводиться имя файла, к которому скрипт подключен.
Если эти переменные соответствуют реальному имени файла - выводите ошибку.
PS. упустил из виду, что сайты-то разные... | |
|
|
|
|
|
|
|
для: yuk
(21.05.2009 в 17:53)
| | Хотя, если они на одном хосте, то может сработать. | |
|
|
|
|
|
|
|
для: iramax
(21.05.2009 в 09:57)
| | Я файл со скриптом загнал в TXT, чтобы он полностью исполнялся на стороне сайта, который его вызывает, включая доступ к глобальным переменным. Т.е. если этому файлу задать расширение PHP и включить его инклудом, то все переменные из $_SERVER он будет выдавать с того сайта, откуда его взяли.
А htaccessом никак нельзя? | |
|
|
|
|
|
|
|
для: iramax
(21.05.2009 в 21:00)
| | >А htaccessом никак нельзя?
Можно. Разрешите доступ только с определённых IP, то есть только вашим сайтам. Директиву не пишу, на память боюсь наврать, но их описание есть на softtim'е. | |
|
|
|