Если у вас есть необходимые разрешения, попробуйте сохранить информацию о соединении в переменных среды, подключиться, используя их, а затем сбросить их.
Я помню, что сталкивался с этим в некоторых книгах и онлайн-ресурсах, но в настоящее время первые несколькоСтраницы Google ничего не возвращают.
Сначала установите две переменные окружения, такие как PHP_MYSQL_USER
и PHP_MYSQL_PWD
вне PHP.Обратите внимание, что вам может потребоваться перезапустить ваш веб-сервер или даже вашу ОС, чтобы они были активными.
Затем в PHP:
mysql_connect('localhost', getenv('PHP_MYSQL_USER'), getenv('PHP_MYSQL_PWD'));
putenv('PHP_MYSQL_USER=');
putenv('PHP_MYSQL_PWD=');
putenv
несколько необязательныЕсли вы включаете в свою систему небезопасные сторонние или пользовательские сценарии и т. д., используя их, вы создаете env.переменные недоступны для остальной части выполнения.
Используя этот подход, даже если кто-то завладеет вашим сценарием, он не будет знать ваши учетные данные БД.Но имейте в виду, что если кто-то загрузит скрипт / оболочку на ваш сервер, он все равно сможет увидеть эти переменные.Вы можете хранить свои загрузочные каталоги в совершенно разных областях, где PHP не является исполняемым, и / или с более низкими разрешениями.Важно, чтобы вы проверяли безопасность своих загрузок, для этого механизма и для любых других серверных вещей.
И в качестве дополнительного примечания, пожалуйста, обратите внимание на PHP PDO вместо использованияплохой старик mysql_connect()
.Вы можете искать неисчислимые причины для этого.