Я думал об отправке номера ошибки MySQL, используя mysqli_errno()
на страницу, сообщающую пользователю, что
«с этим кодом произошла ошибка, если она не исчезла, отправьте этот код владельцу сайта по адресу электронной почты@example.com».
Я видел урок, который показывает, как бросить сообщение mysqli_error () на страницу ошибки, но я не хочу, чтобы пользователь видел описательный текст, только код.
Это безопасно?
будет ли показ кода ошибки MySQL не угрожать безопасности моего сайта?
Я хочу получить выгоду от кода ошибки, чтобы решить проблему. Вы предлагаете другие методы?
Не делайте этого. Раскрытие деталей инфраструктуры вашего сервера является недостатком безопасности. Если злоумышленник знает, что вы используете mysql, он может попытаться использовать mysql. Лучше держите эту информацию в секрете.
Скорее, вы должны создать сервисный интерфейс для ваших клиентов, чтобы они могли войти в систему, чтобы прочитать их журналы ошибок. Вы можете сгенерировать уникальный идентификатор для каждой ошибки (guid) и сохранить ошибку в базе данных, основанной на том же guid. Затем вы можете вернуть этот идентификатор клиенту (например, в качестве заголовка). Ваш клиент может получить это и использовать службу admin / error для запроса базы данных об ошибке, связанной с этим идентификатором.
Я знаю, это звучит запутанно, но безопасность запутана. Есть способы упростить это, например, инструменты COTS, но все они в основном следуют этой схеме.
Других решений пока нет …