We now properly set MAGE_RUN_TYPE and MAGE_RUN_CODE
We’ve corrected an error in our Nginx configuration. We used to always set
MAGE_RUN_TYPE to “store” and
MAGE_RUN_CODE to “default” in your Magento environment.
Luk van den Borne asked us to change this behaviour because it is incorrect. It leads to notorious problems with getting error 404 codes when requesting URLs that are not configured as a base_url in any storeview. This has lead to some very wild Nginx configuration tweaking (attempts) by customers and our support.
So we’ve fixed this by only setting them when needed.
The solution is actually quite simple. The best behaviour is to only set these variables if the user wants to. So out of the box, the system now works as follows:
- Nginx does not set any
- Magento’s bundled
index.phpsees that these variables are missing and defaults to “store” and “”.
Mage::runthen resolves to rendering the default storeview in store mode.
If you want to modify this behaviour, you have two options:
- Use the nginx config file http.magerunmaps: this allows you to specify which codes to run for which URL.
- Code your own code in
We like the
http.magerunmaps solution, because it allows you to upgrade to new Magento versions more easily.