Mettre son site en maintenance sans passer par htaccess

WRInaute accro
Salut

Est-ce que le code suivant au début de mon contrôleur principal (Front controller -> index.php) suffit :

Code:
if(MAINTENANCE===true && IPADMIN!=$_SERVER['REMOTE_ADDR'])
{
    header('HTTP/1.1 503 Service Temporarily Unavailable');
    header('Status: 503 Service Temporarily Unavailable');
    header('Retry-After: 86400');
    header('Location: maintenance.php');
    exit;
}

Je remet également ceci dans mon fichier maintenance.php au cas ou, mais pas certain que ça soit utile:

Code:
header('HTTP/1.1 503 Service Temporarily Unavailable');
header('Status: 503 Service Temporarily Unavailable');
header('Retry-After: 86400');

De cette façon je peux faire le même type de redirection dans mes PDOException si il y a des problèmes de Bdd en mon absence. Toujours dans l'objectif d’éviter de casser mon ref et positionnement en cas de maintenance ou d'un problème de BDD.
 
WRInaute accro
Au lieu de :

Code:
header('Location: maintenance.php');

Je met ceci :

Code:
include(CHEMIN.'maintenance.php');

A mon avis ça évitera certaines confusions avec la redirection. Je ne sais pas très bien si cette solution ets bonne également.

En tout cas j'ai fait le test sur ces 3 sites :

http://www.annuaire-info.com/outil-referencement/test-redirection/
https://www.webrankinfo.com/outils/header.php
et
http://www.redirection-web.net/

hormis le 3eme qui me retourne un code 200 :roll:
les 2 premiers me retournent bien le code 503 :

Code:
HTTP/1.1 503 Service Temporarily Unavailable
Set-Cookie: 720planBAK=R3744884295; path=/; expires=Fri, 17-Jul-2015 13:33:58 GMT
Date: Fri, 17 Jul 2015 12:30:36 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Set-Cookie: 720planD=R1415152917; path=/; max-age=900
Server: Apache
X-Powered-By: PHP/5.6.6
Retry-After: 86400
Cache-Control: max-age=7200
Expires: Fri, 17 Jul 2015 14:30:36 GMT
Vary: Accept-Encoding

L’entête est bonne?
 
Discussions similaires
Haut