Minimum number of PHP modules needed to run Magento

The Magento requirements check is a decent script to run to confirm your server meets the requirements (you need to change the opening PHP tag to <?php if your server doesn’t support short open tags), and if you open it is has a list of PHP extensions needed, which it lists as:

  • curl
  • dom
  • gd
  • hash
  • iconv
  • mcrypt
  • pcre
  • pdo
  • pdo_mysql
  • simplexml

So I’d say you definitely need:

  • php54-pecl-memcache-3.0.8-1.ius.centos6.x86_64
  • php54-mysql-5.4.38-1.ius.centos6.x86_64
  • php54-mcrypt-5.4.38-1.ius.centos6.x86_64
  • php54-xml-5.4.38-1.ius.centos6.x86_64
  • php54-gd-5.4.38-1.ius.centos6.x86_64
  • php54-pdo-5.4.38-1.ius.centos6.x86_64
  • php54-intl-5.4.38-1.ius.centos6.x86_64 (not in requirements checker, pretty sure you need though)
  • php54-soap-5.4.38-1.ius.centos6.x86_64 (same)

I’d advise keeping the following:

  • php54-cli-5.4.38-1.ius.centos6.x86_64 (useful for shell scripts)
  • php54-pear-1.9.5-2.ius.centos6.noarch (needed for Megento connect, if used)

Might be needed depending on modules used / configuration:

  • php54-mbstring-5.4.38-1.ius.centos6.x86_64 (needed by some modules, I beleive SagePaySuite needs it)
  • php54-ioncube-loader-4.7.4-2.ius.centos6.x86_64 (only needed if you have ioncube encrypted extensions)
  • php54-pecl-apc-3.1.13-2.ius.centos6.x86_64 (APC cache, check your local.xml)
  • php54-pecl-redis-2.2.5-1.ius.centos6.x86_64 (Redis cache, check your local.xml)

Not needed:

  • php54-pecl-lzf-1.6.2-8.ius.centos6.x86_64 (LZF compression)
  • php54-imap-5.4.38-1.ius.centos6.x86_64 (IMAP mail, very much doubt you need)
  • php54-process-5.4.38-1.ius.centos6.x86_64
  • php54-bcmath-5.4.38-1.ius.centos6.x86_64
  • php54-odbc-5.4.38-1.ius.centos6.x86_64
  • php54-pspell-5.4.38-1.ius.centos6.x86_64

Oh yeh, also n98 MageRun has a command you can run which is great – n98-magerun sys:check, you could set up a temporary server and just install modules until the check comes back clean, or go the opposite was roudn and strip back what you don’t feel you need and run the command each time, the output for shows pretty much what the Magento one checks for though:

✔ Required PHP Module simplexml found.
✔ Required PHP Module mcrypt found.
✔ Required PHP Module hash found.
✔ Required PHP Module gd found.
✔ Required PHP Module dom found.
✔ Required PHP Module iconv found.
✔ Required PHP Module curl found.
✔ Required PHP Module soap found.
✔ Required PHP Module pdo found.
✔ Required PHP Module pdo_mysql found.


One Response to “Minimum number of PHP modules needed to run Magento”

  1. Appreciate this post. Let me try it out.

Leave a Reply