Magento on nginx: a surprisingly common issue

Often, Magento sites will be set up to have .html on the end of the category pages and product pages. However, often nginx is configured to treat .html like static content and “toss out” any query strings. This breaks pagination and layered navigation among other things.

If you notice that pagination is not working in Magento or category filtering is not working in Magento, just look at your nginx config, and make sure that none of your location blocks match *.html files. You need those requests to hit your PHP block so it’s best to not treat most .html files like static content if you have Magento configured in this way.

Happy coding!