Как я могу ограничить доступ к скриптам своего сайта для других?
У меня есть script, который генерирует аватар. Вот моя структура:
-folder1
-scripts
-MakeAvatar.php
-img
-avatar
Я использую его на других страницах, например:
$name = 'anything';
$hash = md5($name);
$input = "http://localhost/folder1/scripts/MakeAvatar.php?hash=$hash";
$output = "../../folder1/img/avatar/".$name.".jpg";
file_put_contents($output, file_get_contents($input));
Как вы видите, каждый может получить доступ к этому script и сделать аватар:
http://localhost/folder1/scripts/MakeAvatar.php?hash=$hash
Как я могу посвятить этот script только для моего собственного сайта и запретить другим использовать его?
Ответы
Ответ 1
Поместите скрипты за пределы веб-корня.
scripts
-MakeAvatar.php
public (or whatever you call your webroot)
-img
-index.php
Это означает, что www.site.com отправляется на index.php, но вы не можете перейти к сценариям из браузера. Вы можете, однако, сделать:
../scripts/MakeAvatar.php
(from index.php).