We often face 404 error while trying to open configuration page of newly installed extension. We all(almost) knew how to handle this issue. Yes right, logged out and then login back again works always. But have you ever wondered why does this happen? I’ll explain you here why it happens.
Here is the explanation:
As you may know, Magento uses Access Control Lists (ACL) to authorize and control user access to various modules within the system. The purpose of ACL is to effectively manage the website with various user groups that manage different modules of the system. These user groups may be “Administrator”, “Product Manager”, “Sales Manager” etc.
You can create users groups and provide specific accesses to them by going to “System > Permissions > Roles”. When you add/edit some users you can see the list of all permission in “Role Resources” tab. Please see below image for reference:
So lets back to our topic. ACL is assigned to users during login. When we installed an extension and try to open the configuration page we got 404 error because ACL is not yet refreshed for the logged in user. So in this case we need to logged out and login again and at the time of login ACL is refreshed and permission to access newly installed extension is assigned to the logged in user.