Ho un progetto Laravel 5 con instradamenti impostati e una pagina 404 personalizzata (principalmente per "pagine" mancanti/errate).Laravel sta "ascoltando" la stringa index.php ovunque nell'URL
Quindi, fondamentalmente, se apro qualsiasi percorso esistente ottengo l'uscita corretta ed ogni altro URL sta mostrando il 404:
project.com/login
- Belle, login paginaproject.com/ghdkfgl
- 404
Sembra chiaro e sembra funzionare come previsto. Quindi qualsiasi cosa aggiungo dopo la barra si apre o una pagina esistente o una pagina 404.
A meno che non inserisca un "index.php" nell'URL. In questo caso, laravel sta eseguendo la richiesta per qualche motivo come questo:
project.com/jhdfkds/index.php/login
- Apre la pagina di login (la CSS e altre risorse se ne sono andati a causa dei percorsi, ma questo è chiaro).project.com/kfhjdsg/index.php/fkdhsg
- Apre un 404 (ma non vengono caricati anche il CSS e altre risorse).
Sono sicuro che entrambi dovrebbero aprire il 404 poiché non ci sono tali percorsi nel mio progetto.
Ho anche verificato lo stesso comportamento sul sito Web della documentazione di Laravel (presumo che sia stato creato su Laravel).
http://laravel.com/docs/5.0 - Actual URL
http://laravel.com/aaa - Una bella pagina 404
http://laravel.com/aaa/index.php/docs/5.0 - pagina di documentazione laravel ancora una volta, lo stesso come il primo
Quello che potrebbe essere la causa Questo? Come può essere risolto?
Perché Laravel dovrebbe considerare "index.php" nel mezzo dell'URL?
Questo ha qualcosa a che fare con il file .htaccess? (Non l'ho modificato però)
Stai usando Apache o nginx? – ArjanSchouten
in realtà entrambi. Ho un mamp (con apache) in esecuzione sul mio computer locale e nginx sui nostri server di sviluppo e di produzione – MaGnetas
stesso problema qui su nginx –