5 Tips for Running a Drupal 7 site on Rackspace Cloud Sites

December 7, 2011
Tips for running Drupal 7 on Rackspace Cloud Sites

Without going into the positives and negatives of Rackspace’s Cloud Sites platform, there are a few tips that we’ve learned that will help you Run, Deploy and Maintain a Drupal 7 site on this platform.

#1 - Increase the PHP memory limit

In your Drupal .htaccess file add a line at the top of the file that says:
php_value memory_limit 128M

Rackspace Cloud Sites default memory limit is 32MB which is the minimum recommended amount for a Drupal 7 site, but way too small for a full featured Drupal 7 site. My opinion is that 128MB is the minimum and sometimes 256MB is necessary on a large site with many modules.

If I don’t increase the memory limit, I’ll usually get an error on most sites the first time I try to run update.php after updating some contrib modules.

#2 - Uncomment “RewriteBase /”

For clean URLs to work on Drupal in Rackspace Cloud Sites, you must uncomment the line in your .htaccess files that says “RewriteBase /”. Without this line, Drupal won’t give you the option of turning on clean URLs during installation.

For Beginners: uncommenting in the .htacces file simply means deleting the “#” character at the beginning of the line.

#3 - Disable the Overlay Module

This is really just a general tip for Drupal 7. The overlay Module, while cool, definitely slows down the admin side of a site. If you can live without the niceness, it will make building and managing the site much quicker.

#4 - Write Shell Scripts for Repetitive Tasks

One of the biggest negatives of Rackspace Cloud Sites is the lack of shell access. The best alternative we’ve found for repetitive tasks is to write shell scripts, then set up a cron job to run the script. A couple of examples of shell scripts we use are zipping and unzipping archives, dumping and restoring databases, and mirroring a live site back to a development site if they are in the same Cloud Sites account.

#5 - Turn on Caching

This tip really goes for any production site, but especially in Rackspace Cloud Sites. A Drupal site without caching on can seem slow in this hosting environment, but once caching is on, it’s much faster. If you are using Cloud Sites as a development environment, then leave caching off or you’ll pull your hair out wondering why your site changes are showing up. But once the site is live, turn it on.

The cache settings in Drupal 7 are found at: /admin/config/development/performance
Check the boxes next to:

  • Cache pages for anonymous users.
  • Aggregate and compress CSS files.
  • Aggregate JavaScript files.

And select the options:

  • Production (minified)
  • Google

Also, remember that Rackspace Cloud Sites charges based on “compute cycles,” so turning on cache will help keep costs down once the site is live.

Try these tips with your Drupal 7 site on Rackspace Cloud Sites and we guarantee your experience will be much improved. Also check out these other helpful articles we’ve written about Drupal.

Comments

What module have you

What module have you installed since you have the Production (minified) and Google options on the performance page?

Thank for the question,

Thank for the question, Lars.
The JQuery Update Module (http://drupal.org/project/jquery_update) is a standard module for us so I forgot that those settings come from that module.

Thanks for the tips Art. Now

Thanks for the tips Art. Now we just need a guide on how to calculate the costs!

I've found it so difficult figuring out how much cloud hosting will cost on Rackspace and Amazon before building a site.

Art, thanks for this post. I

Art, thanks for this post. I use Rackspace cloud sites for all of my projects, and overall I really like them as a company.

But I seem to be more and more running into issues where my Drupal sites are getting the occasional:

"Site temporarily unavailable.
Connection timed out - please try again."

Then I refresh once or twice and the page comes up. I've talked to Rackspace and they've tried to be as helpful as they can, but it seems that something in Drupal itself is causing these queries to take so long. It also seems more frequent in the last year or so, and both with Drupal 6 and Drupal 7 sites. This timeout message seems particularly frequent on the modules page.

To your knowledge are there any key offenders as far as commonly-used modules that might be causing this problem?

Thanks,
Chris

I have also had this dreaded

I have also had this dreaded time out during module listing and cache clearing. Support says that the timeout is set at 30 seconds and if the database does not complete the query and send a response before that, it will time out. Has to do with the load balancers. Using a non cloud sites database will skip the problem as the load balancers are only used when cloud sites is waiting for cloud sites database. This is an annoying issue that begs for a new hosting platform for drupal 7 if not addressed.

Thanks for the reply.

Thanks for the reply. Actually, since I posted my earlier comment I went ahead and moved a couple of sites that I was having this issue with to Greengeeks.com and the sites load WAY faster now with no such issues. There are apparently key php caching features such as memcache that are very useful for Drupal, but are not being used at Rackspace Cloud Sites and the lack of these slow things down considerably.

I really like Rackspace overall, and will encourage them to make some changes to their service, and in the mean time, some of my clients' sites just won't be able to be kept there.

While Rackspace Cloud Sites

While Rackspace Cloud Sites can be used for Drupal hosting it lacks critical infrastructure which can make your Drupal site scream. For many of our clients who have more demanding needs for performance, we tend to recommend a VPS or dedicated hardware solution. If properly configured, these can provide considerable performance benefits and provide more control and flexibility to both us and our clients.

Pingback

[...] 5 Tips for Running a Drupal 7 site on Rackspace Cloud Sites Without going into the positives and negatives of Rackspace’s Cloud Sites platform, there are a few tips that we’ve learned that will help you Run, Deploy and Maintain a Drupal 7 site on this platform. #1 - Increase the PHP memory limit Step 6: Configure clean URLs Last updated August 21, 2013. March 21st, 2012 | Published in Uncategorized , Google Open Source Earlier this year we announced that we would be conducting a Drupal usability study that we would live stream so viewers could watch as participants worked with Drupal 7. Becky Gessler and I are excited to announce our analysis of the results that we will also present at DrupalCon Denver to the Drupal community in a “core conversation” session with Jen Lampton called “ User eXperience for Open Source: How to Galvanize a Community ." [...]