sql >> Databasteknik >  >> RDS >> Mysql

Var lagrar man MySQL-uppgifter i PHP-skript?

Din webbrot, som är $_SERVER['DOCUMENT_ROOT'] i PHP, är den mapp på ditt filsystem som din webbserver (i det här fallet Apache) pekar på för en viss värd.

Om du till exempel lägger in den här koden i din index.php-fil och besöker ditt domännamn (eller underdomännamn), kommer den att berätta om din webbrot.

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

Det borde stå något i stil med /home/some_user/public_html eller /var/www . I det här fallet vill du skapa en sökväg som inte finns i den här katalogen.

Till exempel:/home/some_user/config eller /var/webconfig .

Det gör du INTE vill lagra den i /home/some_user/public_html/config (märk public_html) eller /var/www/webconfig (notera att detta är en undermapp till /var/www )

Tanken med att lagra data utanför din webbrot är att en angripare inte kan navigera till http://yoursite.com/config/mysql.txt och skaffa dina lösenord. LFI- och katalogövergångsattacker är inte inom ramen för detta initiativ.

Du bör inte heller kontrollera någon känslig information (databasuppgifter, krypteringsnycklar, etc.) i versionskontrollen. Någonsin.

Hur får man tillgång till dem från PHP?

Det beror på hur din konfiguration är kodad.

<?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. Migrera MySQL till PostgreSQL på AWS RDS, del 2

  2. Vad är nytt i MariaDB 10.6

  3. Hur man analyserar strängar som ett proffs med SQL SUBSTRING()-funktionen?

  4. Konvertera valda kolumnvärden till en annan rad med select med samma id part2