Если вы делаете это, чтобы избежать получения нескольких ссылок на один и тот же контент, вы можете просто не использовать «register.php» в любом месте вашей страницы. Я думаю, что ни один поисковик не «догадается» для определенного типа файлов, и если нет проблем с безопасностью, вы на безопасной стороне, потому что, по моему мнению, ни один пользователь не будет ссылаться на этот файл. Однако, если вы хотите быть уверены, просто перенаправьте всю свою функциональность через index.php через одну строку в вашем .htaccess, которая должна быть помещена в ваш корневой каталог www:
RewriteEngine on
RewriteRule ^(.*?)$ index.php?file=$1
В вашем index.php вы можете просто выбрать, какую функцию / файл вызывать, разбив и проверив параметр $ _GET ["file"]. Чтобы быть на 100% уверенным, никто не может получить доступ к вашему файлу register.php напрямую, просто переместите его (и все остальные) в отдельный каталог и включите файл .htaccess со следующей строкой:
DENY from all
Для предотвращения прямого доступа есть несколько других опций. Просто define()
переменная где-то в вашем index.php и в верхней части вашего register.php просто поместите
defined('access') or die('Intruder alert!');
наверху. Другой способ - быть честным и просто сообщить поисковым системам, что ваш контент был перемещен и что им больше не следует использовать старую ссылку:
header("Status: 301"); /* Content moved permanently */
header("Location: http://yourserver/Register/");
exit;
Обновление
Еще одна вещь, которая пришла мне в голову, вы также можете проверить $_SERVER["REQUEST_URI"]
, подключил ли пользователь какой-либо «.php» и действовать соответственно, либо полностью отказав в доступе, либо просто перенаправив на новое местоположение.