2012-07-11 10 views
5

Sto caricando un file 24mb sql e ho seguito le istruzioni per impostare una directory di caricamento per phpmyadmin utilizzando $cfg['UploadDir']. Sfortunatamente non funziona.phpMyAdmin "La directory impostata per il lavoro di caricamento non può essere raggiunta"

Ho creato una cartella all'interno della mia cartella phpMyAdmin chiamata "upload".

Nel mio config.inc.php ho messo il seguente:

$cfg['UploadDir'] = 'upload'; 

Questa configurazione è stata guidata creato da PMA.

ho anche provato:

$cfg['UploadDir'] = './upload'; 
$cfg['UploadDir'] = '/absolute_php_my_admin_address/upload'; 

Ho provato anche tutte quelle varianti con un finale '/' alla fine.

Ho trovato molti thread sul Web con il problema esatto. La mia cartella di caricamento ha le stesse autorizzazioni e proprietà della directory PMA principale. Non sto anche correndo in modalità provvisoria.

Ti sei imbattuto in questo problema e l'hai risolto? Esecuzione di PMA 3.5.2 su Redhat 5.

risposta

18

So che questo è vecchio ma la ricerca di Google per quel problema punta qui. Quindi ecco la risposta:

Debian e Ubuntu limitano l'accesso per le cartelle. Devi usare la cartella phpmyadmin per quello.

In Ubuntu è "/ etc/phpmyadmin /" (senza virgolette).

Quindi la configurazione potrebbe essere:

$cfg['UploadDir'] = '/etc/phpmyadmin/'; 
+0

Che ha funzionato .. grazie :) – Deadlock

+1

@willdanceforfun - qualche possibilità questa potrebbe diventare la risposta accettata? Ha funzionato per Diego e per me ... ed è il primo successo su Google per questo problema. :-) –

+1

@SteveAlmond Ho ceduto a questa pressione tra colleghi e questa è ora la risposta accettata. – willdanceforfun

2

Innanzitutto, controlla upload_max_filesize in php.ini. Di default è 2M, ciò significa che se carichi un file> 2M, fallirà. (Prova a comprimere il file SQL e carica nuovamente.) Puoi caricare upload_max_filesize su un valore maggiore (< 20M) in php.ini e riavviare il tuo server web.

E, assicurarsi che UploadDir sia scrivibile. In Linux, è possibile eseguire questo comando per rendere scrivibile una cartella: chmod a + w upload

+0

Grazie per questo, ho già modificato upload_max_filesize su 80m e altre impostazioni pertinenti come il tempo di esecuzione massimo ecc. Anche la cartella è scrivibile. Grazie comunque. – willdanceforfun

1

È possibile inserire i file di backup in qualsiasi luogo, basta regolare direttiva "php_admin_value open_basedir" in apache.conf file, dovrebbe essere nella stessa directory di configurazione. inc.php (almeno in Ubuntu) o da qualche parte in apache config dir

1

Una domanda piuttosto vecchia ma che ci ha lavorato sin dal mattino e nessuna delle soluzioni ha funzionato. Ma alla fine e come sempre era una soluzione davvero semplice per me su centOS. Assicurati che il nome della tua cartella sia corretto. e.g: "/ etc/phpmyadmin/" non ha funzionato

ma "etc/php MyAdmin/" funzionato bene

1

Inoltre, ricordatevi di controllare se il file config.inc.php contiene già questi righe:

/* 
* Directories for saving/loading files from server 
*/ 
$cfg['UploadDir'] = ''; 
$cfg['SaveDir'] = ''; 

In tal caso, rimuoverli.

2

Quando su un server, ad esempio sto usando hostgator, ho bisogno di accedere come utente root usando Putty.exe. che ho dovuto passare a questa directory di file, /usr/local/cpanel/base/3rdparty/phpMyAdmin/config.inc.php

Questa linea $ cfg [ 'UploadDir'] = ''; A $ cfg ['UploadDir'] = '/ home/nomeutente rootwebsite/public_html/createAFolderHere';

Ciò significa che le cartelle devono essere sincronizzate correttamente. Ho avuto un problema separato in cui non riconoscevo il file .dbf che ho caricato. Sto ancora cercando di capirlo. Ma ho provato un normale file .sql e questo è apparso nel menu a tendina.

Problemi correlati