blob: b5171d252d0f0657627f15e567c998e85d5bde86 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
<?php
// erreur404.php
// cas des liens sans http:// devant (peut-être pas gérable)
//var_dump($_SERVER['REQUEST_URI']);
//exit();
//$pattern = '#(<a[^>]+href=")((?!https?://)[^>]+>)#';
//$data = preg_replace($pattern, '$1http://$2', $data);
// les erreurs 404 sont renvoyées ici par le .htaccess
header('Location: http://' . $_SERVER['HTTP_HOST'] . '/index.php?erreur=404');
// ATTENTION depuis apache en version 2.4 le .htaccess est ignoré par défaut, il y a deux méthodes pour y remedier:
// - méthode facile et moins sécurisée: trouver la ligne "AllowOverride None" dans le fichier de conf d'apache et changer "None" par "All"
// - méthode sécurisée consistant à autoriser uniquement la directive ErrorDocument pour notre site,
// ne rien modifier et ajouter une nouvelle section <directory> comme ci-dessous:
//<Directory /srv/http/ckeditor5/>
// AllowOverrideList ErrorDocument
//</directory
// A adapter! Ce qui figure ici fonctionne sur archlinux, sur debian on remplacera "/srv/http" par "/var/www",
// même chose pour l'emplacement du ficher de conf d'apache
// identifier l'adresse qui a provoqué l'erreur
// $_SERVER['REQUEST_URI']
// https://www.developpez.net/forums/d107096/php/langage/recuperer-url-erreur-404-a/
|