I was working on a client’s new Magento site recently and I came across a puzzling issue. We had completed a Cart2Cart migration from PinnacleCart to Magento, and several of his products had a huge number of custom options. No matter what I did I couldn’t modify any of those custom options; however I could modify the custom options on a product that only had a handful of them. The page would hang for a second after hitting the Save button on one of the large products but it would process after about 20 seconds revealing that no change had occurred. No SQL queries were going through, but Magento gave me a successful save message. Because of the enormity of the POST being sent I checked ‘post_max_size’ in php.ini and changed it to a substantial value. This had no effect on the situation.
After a little pondering it hit me: we use Suhosin! For those of you who don’t know, Suhosin is a PHP extension that provides lots of extra configurable security options. I added the following Suhosin configurations in my php.ini:
suhosin.post.max_vars = #### suhosin.request.max_vars = ####
Where the #’s are a large enough number to cover the number of POST variables, and voila!