Domanda

Il mio amico mi ha chiesto di aggiornare un'applicazione PHP che la sua azienda utilizza. Ho scoperto che l'applicazione utilizza estensione .ini per il file di configurazione di DB. Il file contiene DB indirizzo host, il nome utente e la password !!. Il problema è che posso accedere al file sul browser web.

Sto cercando di capire perché. C'è qualche motivi particolari per utilizzare un file php regolare con estensione ini ??? Io proprio non capisco.

È stato utile?

Soluzione

La leggibilità è uno dei motivi principali che ho usato filies ini per configurazioni di script php in passato. Persone che non sono programmatori hanno eseguito in un file ini almeno una volta prima, e può capire che cosa è molto più facile che anche un semplice file PHP.

La questione del file ini che sono leggibili da tutti, può essere prevenuta con la configurazione lato server, o, meglio ancora, con la semplice aggiunta di una sola riga di codice all'interno di una riga di commento nella parte superiore del file.

Questa uscita modo PHP un 'Accesso diretto proibito' quando il file si accede tramite un browser, e il file ini continueranno a funzionare come prima.

Altri suggerimenti

È possibile utilizzare Zend_Config_Ini . E 'comodo e facile. Basta semplicemente non mettere i file di configurazione in cui qualsiasi utente li (ad esempio public_html) può raggiungere.

file INI sono solo un modo di trattare con la configurazione, forse lo sviluppatore è venuto da un ambiente Windows-sviluppo e usato tutto quello che era familiare :). Inoltre, PHP offre un modo conveniente di analizzare i file INI attraverso la funzione parse_ini_file .

Ti consigliamo di assicurarsi che il file ini non è accessibile dal web però. Spostare al di sotto del docroot così il vostro script PHP può ancora accedervi, ma i browser casuali non è possibile.

Per quel che vale, PHP è utilizzato tradizionalmente php.ini per configurare PHP. Quindi forse è qualche genere di cosa legacy?

Sembra che questo è il desiderio solo ex programmatore di utilizzare vari tipi di file per la configurazione. Se non ci sono altri usi di questo file, rinominarlo in * .php e dimenticare. In caso contrario, configurare server web per analizzare ini come PHP o, meglio, spostarlo in directory, non raggiungibile dal web server.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top