12

I am unable to save the product in Magento 2.

It shows "Invalid Form Key. Please refresh the page. in local

enter image description here

how to resolve this?

  • 2
    Please check your cookie setting – Amit Bera Feb 20 '17 at 14:56
  • Have you tried using different browser? I usually use Google Chrome but came across this problem, setting max_input_vars to higher values didn't help, neither using local IP address instead of localhost, but I tried using Firefox and it worked. – Máté Dusik Jan 7 '19 at 7:21
  • see this github.com/magento/magento2/issues/25427 – Waqar Ali Nov 14 '19 at 10:41
22

This bug arises due to php.ini variable "max_input_vars" Increase it to 10000 through below php function:

ini_set('max_input_vars', 10000);

OR Using linux command line

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)
  • Thanks for you replay @ahmad vaqas khan let me check and update you thanks... – Nagaraju K Apr 21 '17 at 8:29
  • ok. keep updated regarding it. – Ahmad Vaqas Khan Apr 21 '17 at 10:48
  • It worked for me. Very interesting though. How did you debug that? – Abhishek Jakhotiya Aug 7 '17 at 13:53
  • @AbhishekJakhotiya : Great . I googled and came across this useful info . Often being PHP Core deveoper is quite helpful along with Magento developer . – Ahmad Vaqas Khan Aug 7 '17 at 17:59
  • I have changed max_input_vars to 10000, but still having same issue. I am working on local (using ubuntu 16.04) and magento 2.3 – Hemant Kumar Dec 21 '18 at 5:51
5

If you are running this Magento site on a local machine (local host) as your question seems to indicate, you may have trouble using the: http://localhost/ syntax, as Magento 2 doesn't fully know how to deal with cookie.

Instead, I'd recommend using http://127.0.0.1/ to access the local site; in this case your browser should be able to recognize this more easily and work with Magento's cookies properly.

You may need to set a cookie domain in the admin area of Magento.

I hope this helps...

1

Try This Ubuntu 14.0.4 System in magento 2.3-invalid Form key error.

I face invalid Form key error on frondend-side insertion, But crome browser only occured this error, Insertion correctly run in firefox browser.

I solved this error Following steps:-

Change your base URL from localhost to 127.0.0.1.

Using localhost as the domain in your base URL causes problems in Magento 2.

Magento's base URL configuration is located in the core_config_data table. The following values may need to be changed:

web/unsecure/base_url web/secure/base_url For example, if you previously had http://localhost/magento2community/, you should change it to http://127.0.0.1/magento2community/

After changing the url, flush the cache (bin/magento cache:flush). You might also need to clear out your var directories.

I find this solution through this Like https://magento.stackexchange.com/a/122167/78151

1

This problem is occurred after adding more custom options and categories in the product so because php.ini file not allowed to add more custom options.

So, we need to change default settings of php.ini file.

If php version 7.1 then,

/etc/php/7.1/apache2/php.ini

If php version 7.0 then,

/etc/php/7.0/apache2/php.ini

If php version 7.2 then,

/etc/php/7.0/apache2/php.ini

Uncomment this value and update this all value in php.ini,

max_input_vars = 200000
max_input_time = 600
max_execution_time = 3600

Then Restart Apache 2 web server, and check it.

sudo service apache2 restart
0

setting max_input_vars to 10000 in php.ini resolved my issue.

0

In my case it was due to the website protection settings of Firefox.

Firefox blocked some cookies that were needed by Magento2.

So I had to disable it by going to Preferences -> Privacy & Security -> Browser Privacy and choose "Custom" and uncheck the "Cookies" option.

0

Changing base URL from localhost to 127.0.0.1. done the trick for me.

0

Login to your cpanel or Access Magento root via FTP open your file php.ini if you already added maxinput_vars increase the number to 10,000 Or Past this at the bottom of file max_input_vars = 10000 Save your file and refresh magento it cache it should work fine !

0

After endlessly trying all the suggested tweaks to php.ini and cleaning cache, my magento2 still wouldn't accept cookies from localhost even if I used the linux machine name instead, making it seem like a domain name. i finally resorted to using localho.st which is a domain name that resolves dns to your local ip address and this is what worked.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.