Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I would like to setup a hosting environment on a VPS that is used to host Magento.

Magento is an eCommerce platform based on Zend Framework. The OS is definitely going to be Linux. As a first timer, what other things should I take note of?

Thank you.

share|improve this question

Definitely give a look to Zend Server (good recommendation for most PHP applications, reglardless). Most distributions of Linux will have a package for Zend Server, so it should be easy to install.

share|improve this answer
  • Use a opcode cache for php like apc
  • Consider to use a http accelerator (squid, varnish)
share|improve this answer

Magento has a bit of a reputation for being a resource hog.

We're just about to go live with a Magento site, running on a 512MB Slicehost VPS.

Depending on the amount of memory on your VPS, and the expected traffic for the site, you may need to tune both mysql and apache. I found quite a few articles in the Slicehost forums, and elsewhere on the 'net with regard to this. Performance tuning may not be so much of an issue, if it's a low traffic site, but it's worth keeping in mind, the default settings for both apache and mysql leave plenty of room for improvement should you run into issues with memory usage initially. These sorts of decisions are not a one-size-fits-all thing, so I can't give you a bunch of magic numbers to enter info a conf file to get better performance.

I tried nginx initially, as an alternative to apache but in the end decided to go with apache, as I know it a lot better than nginx. I also didn't find the performance gains some people site as reasons for using nginx, although I will attribute that to my lack of knowledge with that server, rather than its abilities.

Once you're ready to go live with the site, make sure caching is turned back on within the admin section of Magento. During development, it's better to turn it off as this ensures any changes you are making are visible instantly, and you're not looking at cached content. It also means you don't get as good performance from Magento, so make sure you turn it back on.

share|improve this answer

I've deployed Magento in the past. It's resource usage is enormous, here's what I did:

  • MySQL query-cache enabled
  • eAccelerator for opcode cache
  • memcached for session directory
  • Apache2

Though if you have the freedom of deploying on a fresh server, I highly recommend lighttpd. You will need to modify index.php in order for it to become lighty compatible

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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