Goodbye xampp, hello Portable Ubuntu

16 Apr

For a long time now I’ve used xampp for testing my scripts locally before committing to the codebase and testing in our dev environment. Apache for windows, at least in this configuration, was incredibly unstable: major memory leaks, and it crashed if it received two connections at once. It has been good enough for rudimentary testing, but always a bit annoying. The memory leak issue caused me to shut down apache as soon as I was done testing any script.

I recently discovered Portable Ubuntu or pubuntu for short, which allows you to run ubuntu inside of Windows (yes, I still prefer windows as my desktop environment). I set up apache and php inside of pubuntu, and after following this suggestion (with my own hacks to make it work over the network: see thread), and pointing apache to the mount point for my workspace (also living in windows), everything is working quite smoothly. Apache is both more stable and faster. Ironically, pubuntu with apache running inside of it is more lightweight than the Apache for Windows distribution that came with xampp was for me.

What’s especially cool is that because of the way pubuntu mounts drives, pubuntu is seamlessly accessing my workspace to serve up files. That means I can edit a php file in my windows IDE of choice (notably not Vim), and that change is immediately reflected in pubuntu with no effort on my part.


Leave a Reply


  1. Jesse

    September 2, 2009 at 6:52 am

    Hi there,

    I’ve been trying to get the same kind of setup going myself. I have pubuntu running lighttpd right now and I want to eventually have samba access setup so over the windows network, other windows users can access the file system for the web server running in pubuntu. This would all be possible I’m sure.. if I could get the stupid thing to network to my own computer first! I followed the instructions on that page you reference but the closest I’ve come to having it working is that I can now ping but it’s re-routed so much or something it says TTL lost in transit. So, I can ping but cannot access the site from firefox windows. I can access just the home page however if I set the eth0 or eht1 to forward port 80 but the home page is all it will load, once I click anything it goes 404. Any suggestions?? Thanks,