I have looked through many tutorials on installing a web server, and some of them have enormous amounts of various PHP extensions. I have a few questions about that:

Why would one want to install all those extensions? How to know which extensions you have to install for your site to work properly? Why some tutorials "just" tell you to install them all, when some tell you to install 4 or 5 of them?


P.S. I'm quite new to Linux, and I'm installing a web server using nginx. Or looking for information about things that look odd to me at the moment.

EDIT: Since the question has been answered, I would like to know which ones of these are most likely unnecessary for a Wordpress or SMF installation?

php5-fpm php5-mysql php5-xsl php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-xcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc

Perhaps there are some extensions that would optimize my website?

1 Answer 1


It's pretty simple: You install the extensions you need.

This is determined by the applications you install. Wordpress for example tells you what extensions it needs to run. So do most other applications.

If you do PHP development yourself then you are the one who determines what you need.

  • 1
    You need php5-fpm as it runs a PHP FCGI server for nginx. nginx does not use a module for communication with php. You can determine the rest by yourself. I think you should first figure what these extensions do before installing them because some of them might open security holes. The more you install the higher the risks. Server administartion is more than installing packages blindly. Jul 8, 2012 at 21:11
  • Thanks - great answer! I'm gonna look around and find a documentation site for them.
    – Jack
    Jul 8, 2012 at 21:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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