Showing results for 
Search instead for 
Did you mean: 

Switching from HTTP to HTTP/2 producing exception

Switching from HTTP to HTTP/2 producing exception

Trying to switch an older M1 project to HTTP2, hosted under Apache 2.4.25


As soon as I enable Apache HTTP/2 (enable modules mpm_event, https and php7.2_fpm), the server serves all websites via H2 without problems, except the one with Magento Without H2 it works fine with the same PHP as a module. Both the backend and the frontend generate the following error messages. Does anyone have an idea how this comes about? I've searched the whole web but haven't found anyone with a similar problem.


a:5:{i:0;s:52:"Front controller reached 100 router match iterations";i:1;s:412:"#0 /srv/www/ Mage::throwException('Front controlle...')
#1 /srv/www/ Mage_Core_Controller_Varien_Front->dispatch()
#2 /srv/www/ Mage_Core_Model_App->run(Array)
#3 /srv/www/ Mage::run('german', 'store')
#4 {main}";s:3:"url";s:1:"/";s:11:"script_name";s:10:"/index.php";s:4:"skin";s:6:"german



Re: Switching from HTTP to HTTP/2 producing exception

Based on the error messages you provided, it appears that the Magento application is encountering issues with the HTTP/2 protocol. This is a known issue with Magento and may require additional configuration changes to work properly with HTTP/2.

Here are a few things you can try to resolve the issue:

  1. Check Magento version compatibility with HTTP/2: Magento was released in March 2019, and it is possible that the code may not be fully compatible with HTTP/2. It is recommended that you check with Magento support or consult the Magento documentation to ensure that your version of Magento is compatible with HTTP/2.

  2. Update Magento: If the Magento version is not compatible with HTTP/2, it may be necessary to upgrade to a newer version of Magento that supports HTTP/2.

  3. Review Apache configuration: Check the Apache configuration file to ensure that the necessary settings for HTTP/2 are properly configured. For example, the SSLProtocol setting should be set to "TLSv1.2 h2 http/1.1" to enable HTTP/2.

  4. Disable HTTP/2 for Magento site: If the above steps do not resolve the issue, you can try disabling HTTP/2 for the Magento site by adding the following line to the VirtualHost configuration file for the Magento site: "Protocols h2c http/1.1".

  5. Check PHP module compatibility: Check that the PHP module you are using is compatible with HTTP/2. Some PHP modules may not work properly with the HTTP/2 protocol.

If none of the above steps resolve the issue, it may be necessary to consult a Magento developer or specialist to help diagnose and resolve the issue.