Rails development without an open port?

I wish to port an old web app over to Rails but I'm running into "political" issues. The host of the server I have access to refuses to open a port for me claiming that an error in a Rails application could bring down the server. Is there any way to do Rails development without having an open port?

Please let me know if clarification is needed here.


Theoretically, of course, with sufficient test coverage you should never actually need to fire up the development server - all the behavior your application is required to show is defined in tests, which pass and so you know it works... ^_~

Perhaps more usefully, the most obvious answer is "Don't develop on that server."

You can download all the components you need, often in nice easy to install packages for just about any OS you use. Try googling for 'Instant Rails' or 'bitnami rails' if you're on windows for example. On linux use yum/aptitude etc. Then only push things up to the server when they're fully developed and/or ready for 'real-world' testing.

Your second alternative is to use something like ssh port forwarding (check your ssh help/man page to find out how to do that) to see the rails application on your local PC without requiring the port to be opened up to the wider web, with the development mongrel bound to the localhost or external access to the port firewalled off.

Finally, what is their policy on developing, say, php scripts on the server? An error in a php script is just as likely to bring down the server, if not more so. The php script is probably running with whatever privilege apache has. The rails application, in development mode, is likely running with just your privileges and in production can be given it's own unprivileged user. Which isn't perfect security, but it helps.

Hope this helps, Jon