Kunci Formulir Tidak Valid. Harap segarkan halaman. kesalahan pada penyimpanan produk

14

Halo Semua
Saya mendapatkan kesalahan ini " Invalid Form Key. Please refresh the page." setiap kali saya mencoba menyimpan produk saya di panel admin.
Saya telah melalui tautan ini di sini tetapi tidak berhasil.
Ketika saya melihat file log saya, ini menunjukkan kepada saya ini

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

Saya berkomentar di baris dalam file seperti yang disarankan dalam artikel ini di sini. Dan kesalahan dalam file log hilang. Tetapi masih tidak dapat menyimpan produk saya dan kesalahan "Kunci Formulir Tidak Valid. Harap segarkan halaman." apa adanya.
Saya memeriksa data pos di pembakar dan itu menunjukkan saya

form_key    THJDhxajLIZnzrHt
form_key    {{formKey}}

sebagai variabel kunci formulir yang lewat ketika saya menyimpan produk saya. Ketika saya memeriksanya di mesin lokal saya itu menampilkan saya

form_key    prvOwOCGjSKG6DpF
form_key    {{formKey}}
form_key    prvOwOCGjSKG6DpF

sesuatu seperti ini.
Adakah yang tahu apa yang salah di sini. Di sini saya dapat melihat bahwa nilai terakhir untuk " form_key" lewat langsung adalah " {{formkey}}" sedangkan di lokal " prvOwOCGjSKG6DpF". Bantuan apa pun dihargai.

Jaimin Sutariya
sumber

Jawaban:

11

Ada satu sumber lagi untuk kesalahan ini: kesalahan cookie_domaindalam konfigurasi. Karena Anda tidak dapat masuk ke area admin, Anda dapat memeriksanya secara langsung melalui mysql:

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

Anda dapat mengubah nilai dalam mysql secara langsung juga. Jangan lupa untuk menghapus cache setelahnya.

Andreas von Studnitz
sumber
4

Pertama-tama coba nonaktifkan setiap modul khusus yang telah Anda instal dan lihat apakah masalahnya tetap ada.

Sepertinya ada sesuatu yang menyuntikkan bidang tambahan ke halaman produk yang bertabrakan dengan parameter form_key yang digunakan oleh pengunggah media dan dan bagian lain dari halaman edit produk sebagai nonce .

Roscius
sumber
Halo Roscius, Seperti yang Anda sarankan, saya pikir pasti ada masalah dengan file unggah media di folder js magento. Saya mengganti folder js dan semuanya berfungsi sekarang. Terima kasih ..
Jaimin Sutariya
2

masalah dengan file inti Anda. Harap periksa jalur dan kode di bawah ini. Anda harus berkomentar di bawah kode untuk masalah masuk 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']);
        }
    }
}
Zaheerabbas
sumber
1

Lihatlah file .htaccess Anda lebih dekat. Ketika saya memigrasi 1.7.0 Magento store saya ke server lain, saya memasukkan file .htaccess dari server lama dan kemudian pesan: "Kunci Formulir Tidak Valid. Silakan segarkan halaman" muncul di layar dan tidak ada yang terjadi bahkan perubahan konfigurasi berpengaruh. Solusinya adalah menginstal magento baru dan kemudian salin file My Store ke root Magento, tidak termasuk .htaccess. Ketika saya menggunakan .htaccess dari instalasi baru semuanya mulai berfungsi dengan baik. Saya tidak tahu apa yang sebenarnya terjadi, mungkin setiap struktur server memiliki entri dan aturan .htaccess yang berbeda dan khusus. Itu berhasil bagi saya.

Paulo
sumber
1

Saya tidak begitu yakin apa masalahnya, tetapi sepertinya ini adalah hasil dari ServerNamearahan server Apache saya .

Saya memberi server global yang sama ServerNameseperti saya memberi instalasi Magento saya. Karena seluruh tujuan kunci formulir (saya pikir) berkaitan dengan keamanan dengan nama domain (XSRF, dll), itu bisa menjadi alasannya.

Saya mengubah global saya ServerNamemenjadi, secara harfiah, "example.com".

Saya kemudian membersihkan cache Magento dan semua sesi di server jarak jauh, dan menghapus cookie di browser saya.

Dan sekarang sudah berfungsi.

(Itu tidak ada hubungannya dengan PHP max_input_varsdalam kasus ini. Saya punya masalah yang berbeda sejak lama berkaitan dengan mereka, meskipun. Ketika menyimpan produk kategori, hanya max_input_varsjumlah produk pertama yang akan diselamatkan, dan sisanya akan dipisahkan dengan kategori. Jadi Anda mungkin sudah memiliki 10.000 produk dalam kategori tersebut, tetapi ketika Anda mencoba menambahkan 1 lagi di admin, dan berakhir dengan hanya 1.000.)

Butkus Buttle
sumber
1

Bug ini muncul karena variabel php.ini " max_input_vars " Tingkatkan hingga 10.000 melalui fungsi php di bawah ini:

ini_set('max_input_vars', 10000);

ATAU Menggunakan baris perintah 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)
Ahmad Vaqas Khan
sumber