Nei Framework non puoi chiamare i link come vuoi, devi rispettarne la struttura.
Zend non l'ho mai usato, ma ad intuito index.php è il controller principale e se non passi da lui non funziona nessun link.
Usando solo "localhost" passi da index.php perché è una delle pagine predefinite nella configurazione di Apache e viene aggiunta automaticamente alla chiamata, anche se nell'indirizzo non la vedi.
Usando "localhost/index.php" stai esplicitamente chiamando il controller principale e quindi ok
Usando "localhost/index2.php" stai chiamando una pagina senza passare dal controller principale e quindi Zend non gestisce la richiesta.

Rispondi quotando