Mysql
 sql >> база данни >  >> RDS >> Mysql

Къде да съхранявате MySQL идентификационни данни в PHP скриптове?

Вашият уеб корен, който е $_SERVER['DOCUMENT_ROOT'] в PHP е папката във вашата файлова система, към която вашият уеб сървър (в този случай Apache) сочи за конкретен хост.

Например, ако поставите този код във вашия файл index.php и посетите името на вашия домейн (или име на поддомейн), той ще ви каже вашия уеб корен.

    <?php
    header("Content-Type: text/plain;charset=UTF-8");
    die($_SERVER['DOCUMENT_ROOT']);
    ?>

Трябва да пише нещо като /home/some_user/public_html или /var/www . В този случай искате да създадете път, който не е вътре в тази директория.

Например:/home/some_user/config или /var/webconfig .

Вие гоНЕ искате да го съхраните в /home/some_user/public_html/config (забележете public_html) или /var/www/webconfig (обърнете внимание, че това е подпапка на /var/www )

Идеята за съхраняване на данни извън вашия уеб корен е, че нападателят не може да отиде до http://yoursite.com/config/mysql.txt и да получите вашите пароли. LFI и атаките за обхождане на директория не са в обхвата на тази инициатива.

Също така не трябва да проверявате никаква чувствителна информация (идентификационни данни за база данни, ключове за криптиране и т.н.) в контрола на версиите. Някога.

Как да получите достъп до тях от PHP?

Това зависи как е кодирана конфигурацията ви.

<?php
$config = parse_ini_file('/home/some_user/config/mysql.ini');
// OR
$config = json_decode('/home/some_user/config/mysql.json');
// OR
require_once '/home/some_user/config/mysql_config.php';
?>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL - Използване на If Then Else в MySQL UPDATE или SELECT заявки

  2. Премахване на връщане на карета в Mysql DB

  3. ГРЕШКА 1396 (HY000):Операцията CREATE USER неуспешна за 'jack'@'localhost'

  4. UTF-8 проблеми с PHP/MySQL

  5. Codeigniter:Колона „id“ в клаузата за ред е двусмислена