web-dev-qa-db-fra.com

L'URL de l'administrateur Magento ne fonctionne pas: 404 après l'avoir modifiée, impossible de revenir en arrière

J'ai parcouru tous les sujets pour trouver quelque chose de similaire à mon cas. J'ai trouvé quelques cas similaires, mais aucune des solutions n'a résolu mon problème.

J'ai changé à travers le backend l'URL de l'administrateur. Après avoir enregistré les modifications, magento m'a directement conduit à une erreur 404. La nouvelle URL que j'ai définie pour l'URL d'administrateur était "gestion". Aller à mydomain.com/gestion, obtient une erreur 404. 

J'ai donc décidé de supprimer les nouvelles entrées créées sur la table magento core_config_data, puis de vider manuellement le répertoire de cache.

Mais après cela, j'ai la même erreur: page 404 non trouvée. J'ai essayé ceci et ceci . Mais toujours pareil.

Ce qui est étrange, c’est que j’ai supprimé tout ce qui concerne la «gestion» de la base de données et vidé le répertoire de cache. Mais lorsque je vais sur mydomain.com/admin, magento redirige mon chemin vers mydomain.com/gestion (avec une erreur 404).

Pourquoi magento me redirige-t-il vers "gestion" quand j'ai supprimé tout ce qui s'y rapporte? Où devrais-je chercher pour résoudre ce problème?

P.D. Magento 1.5.1

10
PauGNU

REPONSE: J'avais le même problème et aucune des réponses précédentes ne fonctionnait pour moi. J'utilise Magento version 1.9.

Voici ce que j'ai fait pour résoudre le problème ...

  1. Allez sur votre cpanel et lancez phpMyAdmin.
  2. Localisez votre base de données Magento et sélectionnez le core_config_datatable.
  3. Recherchez et modifiez les lignes suivantes:
    • Portée: "Par défaut"et Chemin: "admin/url/custom"
      • Sélectionnez la case à cocher NULL) et enregistrez-la.
    • Portée: "Par défaut"et Chemin: "admin/url/use_custom"
      • Modifiez la valeur de 1à et enregistrez).
    • Portée: "Par défaut"et Chemin: "admin/url/use_custom_path"
      • Modifiez la valeur de 1à si ce n'est pas déjà fait) et enregistrez.
  4. Recherchez et supprimez les lignes suivantes:
    • Portée: "Stores"et chemin: "web/secure/base_url"
    • Portée: "Stores"et chemin: "web/unsecure/base_url" (Devrait être situé à la dernière page)
  5. Supprimer le dossier/var/cache

et vous êtes DONE!

allez à votre précédente URL d'administrateur et cela devrait fonctionner!

17
Nxlevel

Voici le correctif pour le piège booby de l'URL d'administration personnalisée du système. Cela n'a jamais fonctionné et probablement jamais. La seule façon de le changer est de changer l'itinéraire via local.xml

https://magento.stackexchange.com/a/40622/553

Et pour tous ceux qui activent l’adresse URL de la base administrative, voici un moyen de la supprimer avant de faire quoi que ce soit quiPUISSEperturber votre système.

Lancez phpMyAdmin et ouvrez votre core_config_data table. Vous devez modifier au moins quatre lignes.

Trouver admin/url/custom et mettre à 0

Les trois suivants auront été définis à partir de l'URL funky de la base d'administration que vous avez définie dans le panneau de configuration de l'administrateur. Vous savez ce que c'est, les lignes suivantes l'auront dans le champ de valeur. Notez leurs numéros d'identifiant de configuration et notez-les.

admin/url/custom et toutes les instances de web/unsecure/base_url web/secure/base_url

Définissez-les comme étant ce que l'URL de base de votre site Web devrait être non sécurisé. Exemple: http://votresiteweb.com/ et n'oubliez pas le dossier suivi d'une barre oblique si vous y avez installé.

EDIT: Flush/var/cache et/var/session.

Cela devrait vous permettre de vous connecter maintenant à votre panneau d'administration en ajoutant/admin à l'URL de votre site Web, comme auparavant. Accédez à votre configuration d'administration avancée. Utiliser administrateur personnalisé sera défini sur Non. Supprimez l'URL du champ URL administrateur personnalisée et enregistrez. Lorsque vous revenez en arrière et vérifiez votre core_config_data table dans phpMyAdmin, vous ne devriez trouver que la ligne admin/url/custom toujours définie sur 0, la ligne admin/url/custom supprimée et les deux autres lignes disparues. ils ont été supprimés via la sauvegarde du panneau d'administration.

La raison pour cela est que vous devez supprimer les bonnes web/unsecure/base_url et web/secure/base_url . Si vous vous trompez, l'interface de votre site Web est complètement désactivée au lieu de simplement perdre le système d'administration.

EDIT: Maintenant que votre site Web est sauvegardé, revenez en arrière et assurez-vous que vous disposez du fichier secure_base_url correct pour récupérer vos fonctionnalités TLS/SSL.

Tout cela a été testé sur un serveur de développement, YMMV

14
Fiasco Labs

Voici la meilleure étape pour déboguer ceci.

  1. Ouvrez Mage_Core_Controller_Varien_Front qui se trouve dans magento/app/code/core/Mage/Core/Controller/Varien/Front.php.

  2. Aller à la fonction getRouterByRoute ($ routeName) 

  3. Ici, mettez ce code print_r($this->_routers);exit;
  4. Il vous donnera tous les modules chargés et le chemin du contrôleur à partir de là, vous pouvez vérifier si votre chemin de module est chargé correctement ou non.
  5. Si votre module n'est pas chargé correctement ici, vous devez modifier le fichier config.xml dans votre module.
1
Harry Matharoo

Pour résoudre ce problème, lancez la requête suivante de phpMyAdmin

UPDATE `core_store` SET store_id = 0 WHERE code='admin';
UPDATE `core_store_group` SET group_id = 0 WHERE name='Default';
UPDATE `core_website` SET website_id = 0 WHERE code='admin';
UPDATE `customer_group` SET customer_group_id = 0 WHERE customer_group_code='NOT LOGGED IN';
SET FOREIGN_KEY_CHECKS=1;
1
Vinod Saini

Et encore plus de confusion à ajouter au mélange:

Aucune de ces réponses ne m'a aidé; ma version de magento est 1.7.0.1. Ce site m'a aidé . Si vous utilisez accidentellement le backend de l'administrateur pour modifier l'administrateur en une URL personnalisée (comme je l'ai fait), vous aurez besoin d'un accès MySql pour y remédier.

Changer simplement les clés admin/url/use_custom et admin/url/custom ne suffit pas. Même quand j'ai changé app/etc/local.xml, rien de ce que j'ai essayé ne fonctionnera pour revenir à l'interface d'administration.

J'ai utilisé une requête telle que select * from core_config_data where path like '%url%'; pour avoir une vue d'ensemble:

// much data omitted...

+-----------+---------+-------------------------------+----------------------------+
| config_id | scope   | path                          | value                      |
+-----------+---------+-------------------------------+----------------------------+
|         3 | default | web/unsecure/base_url         | http://example.com/        |
|         4 | default | web/secure/base_url           | https://example.com/       |
|           |         |                               |                            |
|       745 | default | admin/url/use_custom          | 1                          |
|       746 | default | admin/url/custom              | https://example.com/oops/  |
|           |         |                               |                            |
|      1538 | stores  | web/secure/base_url           | https://example.com/oops/  |
|      1539 | stores  | web/unsecure/base_url         | http://example.com/oops/   |
|      1540 | default | admin/url/use_custom_path     | 0                          |
+-----------+---------+-------------------------------+----------------------------+

Notez mes identifiants 1538 et 1539. Ceux-ci sont modifiés avec le paramètre admin/url/custom. En revenant à admin/url/custom et à admin/url/use_custom`, permettez-moi de me connecter à admin, puis à l'adresse 404 dans l'url personnalisée de l'administrateur oops.

Donc, je remets tous ces éléments à leur état d'avant:

+-----------+-------------------------------+-----------------------+
| config_id | path                          | value                 |
+-----------+-------------------------------+-----------------------+
|         3 | web/unsecure/base_url         | http://example.com/   |
|         4 | web/secure/base_url           | https://example.com/  |
|           |                               |                       |
|       745 | admin/url/use_custom          | 0                     |
|       746 | admin/url/custom              |                       |
|           |                               |                       |
|      1538 | web/secure/base_url           | https://example.com/  |
|      1539 | web/unsecure/base_url         | http://example.com/   |
|      1540 | admin/url/use_custom_path     | 0                     |
+-----------+-------------------------------+-----------------------+

... puis a changé et changé app/etc/local.xml et a pu revenir sur mon site.

Pour effacer admin/url/custom, j'ai utilisé
update core_config_data set value='' where config_id = 746;

1
Chris K

Je voulais juste ajouter ici que, même si vous suivez toutes les étapes du message de forum Magento: http://www.magentocommerce.com/boards/viewreply/274443/ , il se peut que cela ne fonctionne toujours pas - l'URL d'administration par défaut donne toujours une erreur. 

Pour moi, c'était parce que le répertoire/var/log n'était pas configuré avec les fichiers exception.log et system.log. Donc après avoir

$ mkdir var/log
$ touch var/log/system.log
$ touch var/log/exception.log
$ chmod -R g+w var/log

(Modifiez le dernier chmod pour qu'il corresponde aux conditions d'autorisation de votre serveur Web local.)

Ensuite, l'URL d'administration par défaut a fonctionné. Donc, si vous suivez toutes les étapes de la base de données et toujours aucun dés, essayez de créer les fichiers journaux et assurez-vous qu'ils sont inscriptibles par le serveur Web.

1
Mr Benn

Après avoir tout essayé pour résoudre le problème, j'ai découvert que le répertoire/var ne disposait pas des autorisations appropriées. Magento a écrit sur/tmp, il n'y a donc aucun effet de vider le répertoire/var/cache de la racine magento.

Nous avons corrigé les autorisations et vidé le répertoire/tmp et tout est revenu à la normale. Ce sont donc les autorisations/var qui sont à l'origine du problème.

Nous devons maintenant prendre en compte un autre problème.

Merci pour votre aide les gars. 

1
PauGNU

J'ai eu le même problème lors de l'installation de Magento 2. Le problème est probablement lié à la réécriture d'Apache2. Une autre possibilité est vos paramètres d'autorisation de fichier pour votre répertoire Magento. Je voudrais partager 2 solutions qui ont fonctionné pour moi.

Solution 1 (si déjà installé)

Lors de l'installation de Magento 2 sur votre localhost, si vous avez utilisé les champs "localhost" au lieu de 127.0.0.1 "Votre adresse de magasin" et "Adresse d'administrateur Magento" à l'étape 3 de l'installation de Magento, la procédure à suivre est maintenant modifiée dans la table core_config_data 2 rangées:

web/unsecure/base_url to http://127.0.0.1/Magento/

et

web/secure/base_url to https://127.0.0.1/magento2/ Supprimez tout ce qui se trouve dans le répertoire Magento/var/cache.

Alors essaye,

http://127.0.0.1/Magento/index.php/admin/

ou

http://127.0.0.1/Magento/admin/

Solution 2

Essayez de réinstaller Magento avec les paramètres d'autorisation mentionnés dans l'URL ci-dessous: http://devdocs.magento.com/guides/v2.0/install-gde/prereq/Zip_install.html

Dans l'assistant d'installation pour les installations, l'étape 3 utilise 127.0.0.1 dans l'adresse de votre magasin au lieu de "localhost". 

Une autre chose à considérer dans cette étape: Développez Options avancées et décochez l'option 'Apache Rewrites'. 

Terminez la procédure d’installation et essayez les URL d’administrateur mentionnées dans la solution 1.

0
Abhijith