В последнее время возникла серьезная проблема, когда моя веб-хостинга перепуталась, и все мои php-файлы были показаны в виде обычного текста. Это было серьезной проблемой для меня по очевидным причинам. Главным образом, поскольку детали базы данных mysql были выставлены.
Теперь я пытаюсь изменить способ, с помощью которого мои php-файлы получают информацию для входа в базу данных, чтобы это никогда не повторилось, даже если хостинговая компания меня не подвела.
моя текущая настройка выглядит следующим образом:
include 'info.php'; class Login { var $host; var $username; var $password; var $db; var $url;
Внутри info.php указано имя пользователя, пароль и т. Д. Для базы данных. Я хочу сделать так, чтобы файл info.php никогда не просматривался, и только мои .php-файлы имеют доступ к info.php, чтобы получить информацию о входе в систему.
Как я могу настроить это? Это немного сложно для объяснения, поэтому, пожалуйста, не будьте суровыми и -1 мне за плохое описание. Просто спросите, и я проясню все пробелы в моем описании.
Просто разместите info.php
за пределами своего веб-сайта. Таким образом, вы можете включить его, но если ваш веб-хостинг f * # $ вверх, никто другой не сможет просмотреть этот файл, даже как обычный текст.
Затем вы включаете его следующим образом:
include('../info.php');
Таким образом, даже если кто-то узнает, что у вас есть файл с именем info.php
который хранит все ваши пароли, они не могут указывать свой браузер на этот файл.
Вышеупомянутое будет идеальным и самым водонепроницаемым решением. Однако, если это невозможно из-за разрешений, другим вариантом будет размещение всех конфиденциальных файлов в каталоге и блокировка прямого доступа к этому каталогу с использованием файла .htaccess
.
В каталоге, в который вы хотите заблокировать доступ, поместите файл .htaccess
со следующим содержимым:
deny from all
Если по какой-либо причине ответ xbonez не работает (скажем, у кого нет доступа к папке non document_root). Вы можете добиться того же, используя .htaccess
<files info.php> order allow,deny deny from all </files>
Это, теоретически (не проверено), защищает файл от использования в браузере, но не блокирует php от включения указанного файла.
Создайте форму, которая перенаправляет файл на пример «request.php» и включит его для всех ваших запросов. Если ваши данные правильно переадресовываются на определенную страницу, если они не выполняются одинаково. В конце коммутатора переадресация анотера . Таким образом, пользователь не может видеть эту страницу. Не помещайте therer html или что-то еще – только логику.