Я сталкиваюсь с проблемой в magento 1.9.2.3, появляется сообщение об ошибке при подключении с помощью пользовательской формы администратора.
Я создал модуль и продублировал страницу клиента / аккаунта / логина для своей роли пользователя.
<?xml version="1.0"?>
<config>
<modules>
<Custom_Page>
<active>true</active>
<codePool>local</codePool>
</Custom_Page>
</modules>
</config>
мой config.xml:
<?xml version="1.0"?>
<config>
<global>
<page>
<layouts>
<Custom_Page>
<label>User Login</label>
<template>page/user_login.phtml</template>
</Custom_Page>
</layouts>
</page>
</global>
</config>
Нет проблем со старой версией magento.
Но с 1.9.2.3: Неверный ключ формы. Пожалуйста, обновите страницу .
ПРИМЕЧАНИЕ: если я заменил старый Observer.php, это будет сделано:
WWW \ приложение \ код \ ядро \ Mage \ Admin \ Model \ Observer.php
Но я думаю, что несерьезно заменить новый Observer.php старым.
РЕДАКТИРОВАТЬ: Мой user_login.phtml содержит входной ключ form_key.
<form action="/admin" method="post" id="login-form">
<input type="hidden" name="form_key" value="<?php echo Mage::getSingleton('core/session')->getFormKey() ?>"/>
Спасибо за вашу помощь.
magento-1.9
login
admin-panel
form-key
phpschool
источник
источник
Ответы:
У меня была такая же проблема, и я мог ее исправить, установив правильный
Web / печенье / cookie_domain
а также
Web / печенье / cookie_path
значения в таблице
core_config_data
.источник
Я использовал эти запросы и мог войти снова
DELETE FROM core_config_data WHERE path='web/cookie/cookie_domain'; DELETE FROM core_config_data WHERE path='web/cookie/cookie_path';
и, пожалуйста, убедитесь, что пользователь веб-сервера имеет право на запись в хранилище сеансов. проверка
session_save_path
настроек, если вы сохраняете сессию в файлы. Это выглядит так<session_save><![CDATA[files]]></session_save> <session_save_path><![CDATA[/tmp/session]]></session_save_path>
источник
Проверьте свои настройки для https. Если вы используете https для своего magento, но пытаетесь открыть сайт с http, у вас возникнет проблема.
источник
Я получил эту ошибку после обновления до php7.0 . действующее предприятие magento 1.9 . Затем я попробовал каждое предложение там. Вот как я получил это на работу:
источник
В новых версиях Magento требуются формы для
<input type="hidden" name="form_key" value="<?php echo Mage::getSingleton('core/session')->getFormKey() ?>" />
предотвращения атак CSRF (межсайтовая подделка запросов).источник
<input type="hidden" name="form_key" value="Pzty7ZxT6PWRSjhR"/>
с magento 1.7.0.2 все в порядке.У меня была такая же ошибка с Magento 1.9.2.3 после копирования сайта на локальном веб-сервере на MAMP 3.
Таким образом, проблема решена , когда я изменил в таблице , чтобы вместо .
core_config_data
web/cookie/cookie_domain
mysite.lan
mysite.lan:8888
источник
В моем случае это работало в Linux, но в моей локальной среде Windows, использующей virtualbox / Docker и windows 10, эта ошибка была вызвана странными разрешениями, которые vb / docker / windows предоставляет / var / session /. Только в локальной среде разработки я переместил путь с подключенного диска Windows к «реальному» пути на виртуальной машине Linux
Я добавил это в конфигурационный файл
app/etc/local.xml
, а затем удаляются все файлыvar/cache
иvar/session
и может войти в OK.источник
В моем случае я создал ошибку с помощью следующих шагов: я переместил копию magento (dev) в самом magento: magento / magento-copy Прежде, чем они были расположены рядом на сервере. Каждый со своей квотой. Таким образом, перемещение одного существа в другое -> возникли проблемы. Поскольку я не мог просматривать magento-копию с FTP, я изменил владельца файлов с помощью редактора файлов. По любой причине это создало ошибку.
источник
Проверьте, можете ли вы войти по адресу https: // yourwebsite / admin вместо http и проверить core_config_data web / secure / use_in_adminhtml
У меня похожая проблема, и вход в систему работает только на безопасном
источник
Я часто сталкиваюсь с этой проблемой, когда работаю над несколькими сайтами разработки и живыми сайтами, и возникает некоторая путаница с файлами cookie. Ранее я исправил это с помощью запросов MySQL и удаления файлов, но я нашел более удобный способ решения проблемы.
Утилита magerun позволяет проверить наличие проблем с путем к файлам cookie и исправить их. magerun не является частью Magento, поэтому вам нужно будет установить его. Он описан как швейцарский армейский нож для magento, так что вы можете найти его полезным для других вещей.
Чтобы скачать его:
затем
Затем проверьте путь cookie для проблем ...
Он напечатает таблицу. Посмотрите на значение для
web/cookie/cookie_domain
. Когда у меня возникает эта проблема, она не соответствует правильному имени хоста для сайта (например, я получаюdev.example.com
вместоwww.example.com
).Чтобы это исправить, вам нужно сбросить путь и очистить кеш, который может помочь magerun ...
После этого вы сможете снова войти в систему.
источник
Моя проблема была php версии 7.2.
изменить мою версию php для 5.6 в .htaccess
Приложение AddHandler / x-httpd-php56 .php suPHP_ConfigPath / opt / php56 / lib
источник
Еще одна причина, по которой эта ошибка может возникать для самодельных модулей администратора, - это когда
frontName
вашroutes.xml
не совпадает с<add action"someFrontName/someAction" />
вашимmenu.xml
. Это приводит к тому, что ключ, который вы видите в ссылке при попытке открыть модуль, отличается от ожидаемого.источник
Относительно принятого ответа ( https://magento.stackexchange.com/a/102678/6078 ) правильные записи
web / cookie / cookie_domain = ваш базовый URL, например:
а также
Web / печенье / cookie_path
как правило, просто,
/
но может быть/[storecode]|
и в магазинеДля локальной разработки обычно удаляется
cookie_domain
или остается пустой, но похоже, что в Microsoft Edge 80 есть проблемы с этим.источник