Note I have a mac so apache was already installed. I followed the example of some other posters to get things to work as follows...
Put your mp4 media in your apache docs folder (created mine with Handbrake using the standard settings.) Make sure audio is AAC NOT mp3.
Create an rss feed (xml file) that you will put in your dropbox public folder. Point the enclosure links in the file to your local server, this looks like
http://192.168.1.2/myfile.mp4 for me.
Create a mediafly account and add your own rss feed url from dropbox (mine is like
http://dl.dropbox.com/u/123456789/test_rss.xml).
You should see your content listed in your mediafly channel in your browser. Assuming you are on the same network (or same computer) as your server you should be able to test in a web browser to be sure things play.
Now go to your roku box and view the channel you just added. Play the video and everything should be good. If it fails to play you may have an issue with the encoding.
I've done this from a completely wireless setup (both server and roku connected wirelessly) and videos play fine.
Only issue I have is that mediafly keeps track of content in strange ways. Sometimes when I change the rss file it still shows up in mediafly even if I have removed it from the document.
What I really wish is that Roku would support embedded subtitles similar to the way iphone and touch will play.