Message d'avertissement

The subscription service is currently unavailable. Please try again later.

Drupal 6 - Admin - Access Denied

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Salut à tous.

je viens poster ici non pas pour réclamer de l'aide mais au contraire pour vous donner une explication sur un problème que j'ai pu constater sur Drupal 6.
Comme le titre l'évoque, le problème concerne l'impossibilité de se connecter à l'admin via l'url http://www.monsite.com/admin.
En fait ce problème apparaît quand on spécifie un noeud pour la page "access denied" depuis le back office.

En effet, l'impossibilité de se connecter se constate que sur l'url http://www.monsite.com/admin. Mais si on se rend sur l'url l'url http://www.monsite.com/user, l'authentification fonctionne.

Du coup, en comparant les deux formulaires, on constate que le premier (url = http://www.monsite.com/admin) définie l'attribut "action" avec le paramètre $_GET['q'].
Du coup, si on a spécifié le noeud "ma page access denied", l'attribut action vaudra /ma-page-access-denied?destination=admin : ça ne peut alors pas fonctionner !

Ainsi, la solution est de laisser vide le champ dédié à la page "access denied".

Pour personnaliser "access denied", on pourra par exemple ajouter ceci au fichier template.php de sont theme :
function mytheme_preprocess_page(&$vars) {
if(!isset($vars['node'])){
$_REQUEST['destination'] = "node/X"; //Where X is the node id of your access denied page.
drupal_goto();
}
}