Sicuro che la cartella public esiste nella root del tuo sito ?? se si allora prova a fare così aggiungi al posto di $path="/public";


$a=$_SERVER['DOCUMENT_ROOT'];
$path = "$a/public/";