I am trying to install a custom extension I have made which adds a new menu item to the admin menu so you can navigate to the extension.

I have a localhost server which I have been using to develop and test the extension, and on my local server the menu item appears and works with no problem. On my localhost I have tested Magento versions:


However when I install the extension on my remote server, the menu item does not appear. I have tested the following Magento versions on my remote server with the same problem on both:



  • All of my Magento installations on localhost and my remote server were fresh downloads, using a new database for each.

  • I am installing the module on each installation using the same packaged extension file.

  • I followed the installation instructions and set the appropriate folder & file permissions on all installations.

  • I have cleared all caches, both through the admin menu, and by manually deleting the /var/cache/ contents.

  • An ACL for the custom menu item is not appearing if I view Roles > Permissions on the remote servers either.

  • I have refreshed my session by logging out and back in on both. I have also tried saving the Roles > Permissions page and then refreshing the session and cache with no effect.

  • When I install the package through the Magento Connect page, it says that the installation was successful and I can see the extension listed on that page. (On both localhost and remote.)

What could be causing this problem? Everything seems to indicate that this is an issue specific to my remote server, but how can I debug this further and get to the bottom of the issue?

If anyone has experienced this problem before, and/or can put me in the right direction to debug further then I would be most appreciative.

  • Can you post your config.xml and or adminhtml.xml? Also do you have errors enabled on the remote server? Can you see your new extension under System > Configuration > Avanced > Advanced > Disable Module Outputs
    – Emi
    Commented Aug 13, 2015 at 10:08
  • Are you running linux on the server and windows on your localhost? I have had issues with casing on Linux where it was not so on Windows. Check your casing to make sure that is not the problem. Also, check your system.log file. That should hopefully help a bit in diagnosing what is wrong.
    – McKeder
    Commented Aug 13, 2015 at 14:30
  • @McKeder - The remote server is linux, and the localhost is OSX. Nothing useful is getting added to any of the error logs. I've had a play around with the casing and tried a few variations but I haven't made any progress. I don't see how it could be a casing issue if it is working with the exact same code on my localhost.
    – Matt
    Commented Aug 18, 2015 at 1:16
  • @Emi - Yes, errors are enabled. Yes, it does appear under the "Disable Module Outputs" list on the remote server.
    – Matt
    Commented Aug 18, 2015 at 1:29

2 Answers 2


If the only difference is the server, you are (possibly) running a PHP version that is different.

Clone the code on the server to localhost and see if it works. If it does it's a server issue and not a code base issue. Upgrade PHP/MySQL to correct versions.

If it does not work when you clone it to localhost you know that the answer is somewhere in the code that is on the remote server, or missing a file.


Check with your hosting provider, in addition to php/mysql versions, there can be other differences on the hosting environment that might impact the site. For example, mod_security rules.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.