Introducing Passenger

Posted Feb 8 at 09:28 CDT by Daniel in Rails, Software  - 0 comment(s)

Recently, we quietly added an important pair of new apps to our complement of one-click installers based on Phusion Passenger. Passenger’s also known as mod_rails or mod_rack, but in the time I’ve spent playing with it, I’ve come to call it nifty.

Passenger is a module which works with nginx to make it easy to setup and run a wide variety of web applications, but Passenger shines while running Ruby and Ruby on Rails applications. But as you’re about to find out, it’s capable of a lot more.

In the control panel you’ll find two new application types available for installation:

  • Passenger 2.2.8 (nginx 0.7.64/Ruby Enterprise Edition 1.8.7)
  • Rails 2.3.5 (nginx 0.7.64/Passenger 2.2.8/Ruby Enterprise Edition 1.8.7)

The Rails application is a new (and, in many respects, improved) way of setting up your Rails applications; the Passenger application is a more generalized tool for deploying other kinds of applications.

Gems, Rack, and You

One of the great things about both new applications is how easy it is to install Ruby Gems. For example, here’s how I installed Sinatra, a light-weight web application framework:

[ddbeck@web100 ~]$ cd webapps/passenger_app/
[ddbeck@web100 passenger_app]$ export GEM_HOME=$PWD/gems
[ddbeck@web100 passenger_app]$ export PATH=$PWD/bin:$PATH
[ddbeck@web100 passenger_app]$ gem install sinatra
Successfully installed sinatra-0.9.4
1 gem installed
Installing ri documentation for sinatra-0.9.4...
Installing RDoc documentation for sinatra-0.9.4...
[ddbeck@web100 passenger_app]$

Another great feature of Passenger is that it supports the Rack interface which allows Ruby and Ruby frameworks to easily work with web servers. For example, I can use the Sinatra framework I just installed to create a simple web application:

[ddbeck@web100 passenger_app]$ mkdir frank
[ddbeck@web100 passenger_app]$ mkdir frank/public
[ddbeck@web100 passenger_app]$ mkdir frank/tmp
[ddbeck@web100 passenger_app]$ touch frank/config.ru
[ddbeck@web100 passenger_app]$ touch frank/myapp.rb

Then I paste the following code (from Sinatra’s Getting Started guide) into myapp.rb:

require 'rubygems'
require 'sinatra'
get '/' do
  'Hello WebFactioneers!'
end

Next, I put these lines into my config.ru:

require 'rubygems'
require 'sinatra'
require 'myapp'
run Sinatra.application

Finally, I update this line in ~/webapps/passenger_app/nginx/conf/nginx.conf:

root /home/ddbeck/webapps/passenger_app/hello_world/public;

to:

root /home/ddbeck/webapps/passenger_app/frank/public;

and reboot my application with ./bin/restart and voila!

[ddbeck@web100 passenger_app]$ curl ddbeck.webfactional.com
Hello, WebFactioneers!

With the flexibility and other improvements that Passenger provides, we invite you to give the new apps a try. We can’t wait to see what uses you find.

Read the full article and comments


Happy new year!

Posted Jan 6 at 03:45 CDT by Remi in Rails, WordPress  - 2 comment(s)

Happy new year everyone! To kick-off the new year we've added two new installers to our system:

Enjoy! Read the full article and comments


New WordPress screencast

Posted Nov 25 at 10:29 CDT by Remi in WordPress  - 0 comment(s)

We've made a new "Getting started with WordPress" screencast. It is available at http://docs.webfaction.com/software/wordpress.html#getting-started-screencast

The screencast shows how to install WordPress, how to customize it, optimize it and how to keep it secure by upgrading it when new versions come out.

Enjoy!

Read the full article and comments


New Django screencast

Posted Oct 1 at 11:07 CDT by Remi in Django  - 1 comment(s)

We've made a new "Getting started with Django" screencast. It is available at http://docs.webfaction.com/software/django.html#getting-started-screencast

The video is available in HD and with subtitles. Enjoy while it's hot!

Read the full article and comments


New "WebFaction tour" 2min video

Posted Sep 24 at 05:38 CDT by Remi in General  - 0 comment(s)

We just finished a new "WebFaction tour" video showing why WebFaction might be a good fit for your hosting needs.

If you're considering WebFaction and would like to know a bit more about our service make sure you check it out, it's only 2min long: http://www.webfaction.com/demos/tour

Thanks a lot to Ian and his team from Procasts for making the video.

Read the full article and comments


Latest news

Posted Sep 3 at 10:39 CDT by Remi in Django, Documentation  - 3 comment(s)

Here is what's been happening lately:

New software-specific documentation

We've started writing some new documentation about specific software. This new documentation will eventually replace and surpass all of our knowledge base. The two latest guides that we wrote are:


WSGI SSL middleware no longer needed

Our mod_wsgi and django on mod_wsgi apps now come with the following line in their apache configuration:

SetEnvIf X-Forwarded-SSL on HTTPS=1


This means that mod_wsgi will set the right wsgi.url_scheme, removing the need for SSL middlewares such as http://www.djangosnippets.org/snippets/240/

Support for email extensions

Email extensions are now fully supported. This means that you can configure an email such as email@domain.com in the control panel and people can send emails to email+anything@domain.com and it'll work.

Read the full article and comments


System administrator position available

Posted Sep 1 at 10:18 CDT by Remi in General  - 0 comment(s)

We have a new position available for a system administrator. Details at http://www.webfaction.com/jobs

Read the full article and comments


New documentation available

Posted Aug 25 at 12:13 CDT by Remi in Documentation  - 2 comment(s)

We've just made some new documentation available at http://docs.webfaction.com .

Right now it contains an extensive user guide, which cover all aspects of the services we offer and an API reference and tutorial for people wanting to use our API. Each document can also be downloaded as a PDF file.

Soon we will be adding a lot of application-specific documentation (right now that documentation is only available in our knowledge base but we will migrate it to http://docs.webfaction.com).

As a side note, the documentation was built with Sphinx (the documentation tool) and the search was implemented with Sphinx (the search tool), both of which we highly recommend... except for the confusing name clash :)

Read the full article and comments


New installers available

Posted Aug 14 at 10:26 CDT by Remi in Django, Drupal, Joomla, Software  - 3 comment(s)

We've just added a bunch of new installers to our control panel:

  • WordPress-2.8.4
  • Joomla-1.5.14
  • Drupal-6.13
  • TurboGears-2.0

These WordPress, Joomla and Drupal releases all fix security issues so upgrading is highly recommended.

Recently we also added mod_wsgi-2.5 and Django-1.1 to our installer.

Enjoy while it's hot!

Read the full article and comments


3 myths about shared hosting

Posted Jun 10 at 05:06 CDT by Remi in General  - 5 comment(s)

The line between shared hosting, VPS hosting and cloud hosting is getting thinner and thinner. By pushing the limits of shared hosting we are able to give you most benefits of VPS hosting and cloud hosting while still keeping the benefits of shared hosting (easier to use, less maintenance and sysadmin work). Here are 3 myths about shared hosting that are no longer true:

Myth #1: Shared hosting isn't flexible and up-to-date in terms of software I can run

This may have been true in the past and may still be true with some shared hosts, but modern shared hosts provide you with all the latest tools and are constantly adding new tools. For instance, we added Python-3.0 to all of our servers a few hours after it was released. We also add new versions of popular tools such as Django, WordPress, Drupal, etc. to our one-click installer shortly after they are released.

In terms of flexibility we let you install and run pretty much any software you like as long as it doesn't violate our AUP and it doesn't use too much resources on the server. We give you all the tools you need to install your own software if you want to, much like a VPS would do: we give you full SSH access and all the compilers and libraries you need. Most tools support a "--home=$HOME" option at configuration time which means you can install it in your home directory and don't need to be root.

Myth #2: Shared hosting suffers from the "bad neighbor" problem

The "bad neighbor" problem in shared hosting means that your site would slow down if another site that happened to be on the same server as you started using lots of resources. This may have been true in the past but with good monitoring and fast action we are able to considerably reduce this problem: we are constantly monitoring the health of our servers (CPU, disk IO, memory usage, network usage) and as soon as a potential problem arises our monitors either send a warning or can even take action if needed. As a result they are able to prevent most "bad neighbor" problems before they arise.

Myth #3: Shared hosting doesn't scale

Some shared hosts only give you one account on one server to run your site so you can only handle traffic up to a point. A while ago we added to our control panel the ability to have multiple plans on multiple servers from the same control panel account. This means that you can setup the same application on multiple servers and load-balance your traffic between these servers (by default our system provide DNS load-balancing but you can also run a software load-balancer on one of your servers).

Right now you have to open a ticket to get extra plans on other servers but we plan to add that ability to our API and when we do you'll be able to instantly add or remove plans from the account.

Read the full article and comments


Pages: 1 2 3 4 5 6 7 8 9 10 11