Signori, Sto usando Codeigniter per creare un blog. Potrei aver bisogno di un modo per reindirizzare un errore 404 in una pagina 404 personalizzata. Proprio come la pagina 404 di Abduzeedo.com. È possibile controllarlo usando i percorsi? O dovrei usare i controller per indirizzarlo a un'altra vista? Grazie mille!Come posso reindirizzare un errore 404 in una pagina 404 personalizzata usando Codeigniter?
risposta
c'è un altro modo che utilizzo: annullando la classe principale Exception di Codeigniter. In primo luogo assicurarsi che il file di configurazione (system/application/config/config.php) prefix sottoclasse è la seguente $config['subclass_prefix'] = 'MY_';
poi fare un file chiamato MY_Exceptions.php in system/application/librerie. Quindi eseguire l'override della funzione show_404() qui come segue.
Ora Controller errore sarà la pagina di errore, in cui la pagina verrà reindirizzata per errore 404.
Per una soluzione semplice, andare al file "error_404.php" in "errori di applicazione//" directory e mettere questo codice all'inizio del file:
header("Location:".base_url());
Sarà reindirizzare la tua 404 pagina alla home page.
Soluzione semplice.
Crea il tuo errore personalizzato o pagina non trovata nella visualizzazione.
Creare un controller per la pagina di errore. All'interno della funzione di indice caricare la vista della pagina di errore che hai già creato nel passaggio precedente.
Ora, vai alla tua application/config/routes.php
si dovrebbe trovare $route['404_override'] = '';
Suo il ''
dire la sua chiamando la pagina di errore predefinita.
Ora posizionare il nome del controller per la pagina di errore.
Funzionerà.
Supponiamo che il controller per la pagina di errore sia 'error'
. e la pagina di visualizzazione è 'notfound'
.
Quindi, il codice per Error.php
regolatore sarà:
<?php
class Error extends CI_Controller
{
function index()
{
$this->load->view('notfound');
}
}
Ora, ho sostituito $route['404_override'] = '';
-$route['404_override'] = 'error';
in application/config/routes.php
.
personalizzato pagina 404 è creare utilizzando la seguente 3 passi,
Fase 1: prime vie aperte.php in application/config e impostare un nome del controller personalizzato,
$route['404_override'] = 'my404'; //my404 is class name.
Fase 2: Creare un nuovo controller e scrivere il seguente codice in esso. Il codice è molto facile da capire. Quindi non ho intenzione di spiegare qui,
<?php
class my404 extends CI_Controller
{
public function __construct()
{
parent::__construct();
}
public function index()
{
$this->output->set_status_header('404');
$data['content'] = 'error_404'; // View name
$this->load->view('index',$data);//loading in my template
}
}
?>
Fase 3: Creare un file di vista con il nome 'error_404.php' con il tuo messaggio personalizzato.
Bene si desidera mostrare la pagina 404 personalizzata quando la pagina non viene trovata nel sito Web, basta sostituire il file personalizzato sul file principale che si trova in application/error/error_404.php
basta sostituire il file qui e sei a posto dove puoi seguire altri metodo utilizzando routes
e il controller personalizzato per l'utente personalizzato 404 page
. Ma il modo più semplice e semplice è la sostituzione del file core con il file 404error page
personalizzato
Primo open routes.php nella cartella application/config e impostare un nome del controller personalizzato.
$route['404_override'] = 'custom404'; //custom404 is class name.
Creare un nuovo controller e scrivere il seguente codice in esso. Il codice è molto facile da capire. Quindi non ho intenzione di spiegarlo qui.
<?php
class custom404 extends CI_Controller
{
public function __construct()
{
parent::__construct();
}
public function index()
{
$this->output->set_status_header('404');
$data['content'] = 'error_404'; // View name
$this->load->view('index',$data);//loading in my template
}
}
?>
Creare un file di visualizzazione con il nome 'error_404.php' con il tuo messaggio personalizzato. Questo è tutto ciò che devi fare e avrai ora la tua pagina 404 personalizzata.
molto molto molto molto più semplice soluzione ...
Basta modificare /application/views/error_404.php
con la vostra abitudine 404 pagina :)
Non c'è bisogno di creare qualsiasi controller o modificare il codice, piuttosto che modificare un file vista . È appena stato inserito il codice HTML della pagina 404 nel file application/views/errors/html/error_404.php
.
Se si desidera utilizzare base_url() o qualsiasi altra funzione CodeIgniter, inizializzare la classe CI_Controller come il codice riportato di seguito.
<?php
$ci = new CI_Controller();
$ci =& get_instance();
$ci->load->helper('url');
?>
Questo è stato effettivamente il migliore per me. Non riuscivo a far funzionare il controller 404, ma questo mi ha permesso di accedere ai miei modelli e alle mie opinioni e fare ciò di cui avevo bisogno. Grazie. – dgig
In CI 2.2 puoi semplicemente modificare la tua pagina ma per 3.0 inizializziamo ci_contoller come hai definito (y) –
- 1. MVC4 Pagina personalizzata 404?
- 2. Come posso creare un errore decente 404 gestore per CodeIgniter?
- 3. Codeigniter 3.0.0 - errore 404 pagina non trovata
- 4. Come restituire la "propria" pagina 404 personalizzata?
- 5. CodeIgniter 404 Pagina non trovata, ma perché?
- 6. RoutingError Pagina 404
- 7. .htaccess reindirizza su 404 pagina RewriteRule
- 8. Mostrando 404 personalizzata pagina di errore con pacchetto standard http
- 9. Basic Rails 404 Errore Pagina
- 10. Pagina di errore 404 personalizzata non funziona su IIS 8.5
- 11. Come reindirizzare a 404 pagine in routes.rb?
- 12. codeigniter Function Call 404
- 13. Come si crea una pagina 404?
- 14. PHP CodeIgniter 404 on deploy
- 15. Errore 404 nella configurazione Magento personalizzata nell'admin
- 16. Come posso prendere un 404?
- 17. Esecuzione del codice per una pagina Django 404 personalizzata
- 18. errore mod_rewrite 404 if .php
- 19. Mostra pagina errore 404 dopo l'errore [Autorizza]
- 20. Spring Boot - pagina 404 personalizzata con tomcat autonomo
- 21. 404 pagina response.redirect vs server.transfer
- 22. Sitecore utilizza "302 trovati" per reindirizzare gli utenti alla mia pagina 404 personalizzata: è legittimo?
- 23. SparkJava pagina di errore personalizzata
- 24. Reindirizzare da una pagina 404 a una nuova pagina utilizzando ASP.Net
- 25. Errore Django 404 personalizzato
- 26. Nginx - Personalizzazione della pagina 404
- 27. Come lanciare un errore 404 in express.js?
- 28. Wrapping StaticFileMiddleware per reindirizzare gli errori 404
- 29. NuGet.Server restituisce errore 404
- 30. YII come gestire la pagina di errore 404 personalizzata insieme ad altre pagine di errore
cos'è questo tizio ............ –