Almindelig praksis for dette problem omfatter at lægge databaselegitimationsoplysningerne i en konfigurationsfil, der ikke er PHP, såsom en .ini-fil, og derefter læse den med PHP. For at tilføje ekstra sikkerhed bør du også placere konfigurationsfilen uden for webroden, så du kan være sikker på, at ingen kan få adgang til filen ved at navigere direkte til den.
For eksempel definerer Laravel-rammeværket (blandt andre) web-roden i /public directory, mens der uden for denne mappe er en .env
fil, der indeholder databaselegitimationsoplysninger blandt andre indstillinger.
Se her for mere info:Sådan sikrer du databaseadgangskoder i PHP?
Endnu vigtigere er det dog, at du aldrig behøver at bekymre dig om, at din PHP bliver serveret som almindelig tekst. Tag de rette udviklingsforanstaltninger for at sikre, at dette aldrig sker. Nogle udgangspunkter er:
- Sørg for, at du har PHP installeret!
- Sørg for, at du åbner og lukker dine tags korrekt
- Sørg for, at din filtypenavn er
.php
og ikke.html
(medmindre du bruger denne løsning ) - Sørg også for i produktionskoden, at du ikke viser fejl på siden (display_errors ini)