Khóa mẫu không hợp lệ. Vui lòng làm mới trang. lỗi lưu sản phẩm


14

Xin chào Tất cả
tôi đang gặp lỗi này " Invalid Form Key. Please refresh the page." bất cứ khi nào tôi cố gắng lưu sản phẩm của mình trên bảng quản trị.
Tôi đã đi qua liên kết này ở đây nhưng không thành công.
Khi tôi nhìn vào tệp nhật ký của mình, nó hiển thị cho tôi cái này

2013-09-03T07:07:43+00:00 ERR (3): Notice: Undefined index: httponly  in /var/www/app/code/core/Mage/Core/Model/Session/Abstract/Varien.php on line 94
2013-09-03T07:07:43+00:00 ERR (3): Notice: Undefined index: secure  in /var/www/app/code/core/Mage/Core/Model/Session/Abstract/Varien.php on line 96
2013-09-03T07:07:43+00:00 ERR (3): Notice: Undefined index: domain  in /var/www/app/code/core/Mage/Core/Model/Session/Abstract/Varien.php on line 98

Tôi nhận xét ra các dòng trong tập tin như đề xuất trong này bài viết ở đây. Và các lỗi trong tệp nhật ký đã biến mất. Nhưng vẫn không thể lưu sản phẩm của tôi và lỗi "Khóa biểu mẫu không hợp lệ. Vui lòng làm mới trang." là như nó là.
Tôi đã kiểm tra dữ liệu bài đăng trong fireorms và nó cho tôi thấy

form_key    THJDhxajLIZnzrHt
form_key    {{formKey}}

như các biến chính hình thức đi qua khi tôi lưu sản phẩm của mình. Khi tôi kiểm tra nó trong máy cục bộ, nó sẽ hiển thị cho tôi

form_key    prvOwOCGjSKG6DpF
form_key    {{formKey}}
form_key    prvOwOCGjSKG6DpF

một cái gì đó như thế này
Có ai có bất cứ ý tưởng những gì sai ở đây. Ở đây tôi có thể thấy rằng giá trị cuối cùng cho " form_key" truyền trực tiếp là " {{formkey}}" trong khi ở địa phương là " prvOwOCGjSKG6DpF". Bất kỳ trợ giúp được đánh giá cao.

Câu trả lời:


11

Có một nguồn nữa cho lỗi này: một lỗi cookie_domaintrong cấu hình. Vì bạn không thể đăng nhập vào khu vực quản trị, bạn có thể kiểm tra trực tiếp thông qua mysql:

SELECT * FROM core_config_data WHERE path LIKE '%cookie_domain%';

Bạn cũng có thể thay đổi giá trị trong mysql. Đừng quên xóa bộ nhớ cache sau đó.



4

Trước tiên hãy thử vô hiệu hóa bất kỳ mô-đun tùy chỉnh nào mà bạn đã cài đặt và xem sự cố vẫn còn.

Có vẻ như có thứ gì đó đang đưa một trường bổ sung vào trang sản phẩm đang va chạm với tham số form_key được sử dụng bởi trình tải lên phương tiện và các phần khác của trang chỉnh sửa sản phẩm dưới dạng nonce .


Xin chào Roscius, Như bạn đã đề xuất, mặc dù phải có một số vấn đề với các tệp tải lên phương tiện trong thư mục magento js. Tôi đã thay thế thư mục js và mọi thứ hoạt động ngay bây giờ. Cảm ơn ..
Jaimin Sutariya

2

vấn đề với tập tin cốt lõi của bạn. Vui lòng kiểm tra đường dẫn và mã bên dưới. Bạn phải nhận xét bên dưới mã về vấn đề đăng nhập chrome.

 app/code/core/Mage/Core/Model/Session/Abstract/Varien.php:87
// session cookie params
$cookieParams = array(
    'lifetime' => $cookie->getLifetime(),
    'path'     => $cookie->getPath(),
    'domain'   => $cookie->getConfigDomain(),
    'secure'   => $cookie->isSecure(),
    'httponly' => $cookie->getHttponly()
);

if (!$cookieParams['httponly']) {
    unset($cookieParams['httponly']);
    if (!$cookieParams['secure']) {
        unset($cookieParams['secure']);
        if (!$cookieParams['domain']) {
            unset($cookieParams['domain']);
        }
    }
}

1

Hãy xem xét kỹ hơn về tập tin .htaccess của bạn. Khi tôi di chuyển cửa hàng Magento 1.7.0 của mình sang một máy chủ khác, tôi đã bao gồm tệp .htaccess từ máy chủ cũ và sau đó là thông báo: "Khóa biểu mẫu không hợp lệ. Vui lòng làm mới trang" bật trên màn hình và không có gì xảy ra ngay cả khi thay đổi cấu hình có hiệu lực. Giải pháp là cài đặt một magento mới và sau đó sao chép tệp My Store gốc Magento, ngoại trừ .htaccess. Khi tôi sử dụng .htaccess từ bản cài đặt mới, mọi thứ bắt đầu hoạt động tốt. Tôi không biết chính xác những gì xảy ra, có thể mỗi cấu trúc máy chủ có các mục và quy tắc .htaccess khác nhau và cụ thể. Nó làm việc với tôi.


1

Tôi không chắc chắn chính xác vấn đề là gì, nhưng dường như đó là kết quả của các ServerNamechỉ thị của máy chủ Apache của tôi .

Tôi đã cung cấp cho máy chủ toàn cầu ServerNamegiống như tôi đã cài đặt Magento. Vì toàn bộ mục đích của khóa biểu mẫu (tôi nghĩ) phải liên quan đến bảo mật với tên miền (XSRF, v.v.), nên đó có thể là lý do.

Tôi đã thay đổi toàn cầu của mình ServerNamethành "example.com".

Sau đó tôi xóa bộ nhớ cache Magento và tất cả các phiên trên máy chủ từ xa và xóa cookie trên trình duyệt của tôi.

Và bây giờ nó đang hoạt động.

(Trong max_input_varstrường hợp này không liên quan gì đến PHP . Tôi đã gặp một vấn đề khác cách đây rất lâu liên quan đến chúng. Khi lưu các sản phẩm loại, chỉ có max_input_varssố sản phẩm đầu tiên sẽ được lưu và phần còn lại sẽ bị tách ra với Vì vậy, bạn có thể đã có 10.000 sản phẩm trong danh mục, nhưng khi bạn cố gắng thêm 1 sản phẩm nữa trong quản trị viên và kết thúc chỉ với 1.000.)


1

Lỗi này phát sinh do biến php.ini " max_input_vars " Tăng nó lên 10000 thông qua bên dưới chức năng php:

ini_set('max_input_vars', 10000);

HOẶC Sử dụng dòng lệnh linux

cd /etc/php/7.0/apache2/
vi php.ini (Open for edit and set max_input_vars=10000)
:wq(Press esc and write the mentioned command to save and exit)
sudo /etc/init.d/apache2 restart(Restart Server)
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.