Installed Extensions Not Showing In Magento Admin

back to tech articles
Magento Community Edition 1.7.0.2, CentOS 5

First things first, go the bottom and read the important notes section 😉

The Scenario

You install an extension via Magento Connect successfully, but it doesn’t show up anywhere where it’s supposed to in the Magento Admin Panel.

Also, you may occasionally have an error for new products where pulling product images results in a “cached images not found” error.

The Cause

These problems are most likely caused by permissions (and ownership) errors within your Magento folder structure.

The Solution

Firstly, we need to ensure that the user belongs to the apache group.

1
usermod -a -G apache root

Reset the original permissions for all folders and files under your root directory.

1
2
3
chown -R root:apache /var/www/html
find /var/www/html -type d -exec chmod 775 {} ;
find /var/www/html -type f -exec chmod 664 {} ;

Ok, getting there. Now we need to change the default umask setting for Magento to ensure that Magento uses group inheritance. We need to edit Magento’s default index.php file. Change the umask(0); setting to 022, like so…

1
umask(022);

Now to take care of the server umask setting. We need to modify the user’s .bashrc or .bash_profile file to include the following line:

1
umask 022

Done!

That’s it. you may want to restart your server to ensure all is well. Some important notes about this article:

  • I am using a dedicated server. You may need to check your permissions for a shared hosting solution when giving your user permissions (my user is root, YES ROOT!).
  • Backup, backup, backup BEFORE you try this fix. You have been warned 🙁
  • Once the server has rebooted, re-install your extensions via Magento Connect and flush the caches

Newly added products will inherit the correct permissions for product images, so there’s nothing more to do there. Please comment to improve this or add missing steps.

Leave a Reply

Your email address will not be published. Required fields are marked *