diff --git a/ecrire/exec_auth.php b/ecrire/exec_auth.php
index c00f57096d5f3d85495e4cbf01344fa0d648d3db..1d8f77d5a2d29ed1d88f823d75a9bf0e7cbcb856 100644
--- a/ecrire/exec_auth.php
+++ b/ecrire/exec_auth.php
@@ -99,8 +99,10 @@ function auth_dist() {
 	// demander login / mdp et nettoyer en cas de login en echec
 	if (!$auth_login) {
 		if ($_GET['bonjour'] == 'oui') $clean_link->delVar('bonjour');
-
-		redirige_url_public('spip_login', "url=".urlencode(str_replace('/./', '/',  _DIR_LOGGED_IN. $clean_link->getUrl())));
+		redirige_par_entete(
+			generer_url_public('spip_login',
+			"url=" . urlencode(str_replace('/./', '/',
+			_DIR_LOGGED_IN. $clean_link->getUrl()))));
 	}
 
 	//
diff --git a/ecrire/inc_utils.php b/ecrire/inc_utils.php
index d6065bdd081d42a3baf49f57c39e89fc27a4103b..c6f91519f0793b324aa4cf77dbda8786489acfc2 100644
--- a/ecrire/inc_utils.php
+++ b/ecrire/inc_utils.php
@@ -176,8 +176,8 @@ function spip_query($query) {
 	// moins bien les erreurs timeout sur SQL), on ne force donc pas l'upgrade
 	if ($GLOBALS['spip_connect_version'] < 0.1) {
 		if (!_DIR_RESTREINT) {$GLOBALS['db_ok'] = false; return;}
-		redirige_url_ecrire("upgrade","reinstall=oui");
-		exit;
+		redirige_par_entete(
+			generer_url_ecrire('upgrade', 'reinstall=oui', true));
 	}
 
 	// Faire la requete
@@ -544,10 +544,6 @@ function redirige_par_entete($url, $fin="") {
 	exit;
 }
 
-function redirige_url_ecrire($script, $args="") {
-	redirige_par_entete(generer_url_ecrire($script, $args, true));
-}
-
 // transformation XML des "&" en "&amp;"
 function quote_amp($u) {
 	return preg_replace(