J'ai configuré un alias Drush pour mon site Web (hébergé sur un hébergement partagé), l'alias fonctionne correctement, car des commandes comme drush status
, drush cc all
, etc. travail. Le problème vient avec drush uli
. Il génère le lien de connexion unique, le domaine est correct, tout semble correct, mais lorsqu'il est entré dans un navigateur, il en résulte standard Drupal
Accès refusé
page.
Partie de la configuration de l'alias et quelques problèmes intéressants autour de path-alias
- es, les relations avec les paramètres de la base de données, son utilisation et sa pertinence, les alias sont à l'origine discutés dans page des problèmes de Drush sur GitHub .
Informations techniques:
drush upwd
en utilisant le même alias).sessions
, etc.) discutées dans problème similaire mais différent sur StackExchange.Alias Drush:
$aliases['myalias'] = array(
'uri' => 'mysite.com',
'root' => '/home/mysite.com/web',
'path-aliases' => array(
'%drush' => '/home/.composer/vendor/drush/drush',
),
'%files' => '/home/mysite.com/web/sites/mysite.com/files',
);
L'alias fonctionne correctement pour d'autres commandes telles que l'effacement des caches et drush status
confirme que Drupal est correctement démarré.
Je ne sais pas exactement pourquoi le drush uli
arrive à Accès refusé. Je soupçonne que c'est quelque chose avec la validation/génération des liens à usage unique et/ou un horodatage incorrect dans la table tilisateurs.
La solution supprimait le mot de passe dans la base de données. (Le changer via drush upwd
ou directement dans Drupal n'a pas fonctionné.) Après avoir supprimé le mot de passe de l'utilisateur, j'ai pu exécuter drush uli
.
Cela peut se produire lorsque l'utilisateur est bloqué. La définition de l'état sur 1 dans le tableau Utilisateurs peut le résoudre.
Je viens de le rencontrer dans une configuration de développement local .. s'est avéré être le $cookie_domain
paramètre validé dans settings.php
... si ce paramètre est défini sur l'URL de production, vous obtiendrez pas un cookie valide, et l'accès ne sera donc jamais accordé. Remplacement $cookie_domain
pour correspondre à l'environnement de développement local dans local-settings.php
a fait l'affaire!
Vérifiez également le table d'inondation . Il est possible qu'il existe des enregistrements qui sont des tentatives infructueuses par adresse IP qui bloquent l'accès.