It’s always the little things.
After working through a complete install of rails on Mac OSX Tiger, following the excellent steps on this page, and then creating a test application a la these directions, I still couldn’t get my browser to recognize my application. Yes I would get the “Welcome Aboard” message when connecting to localhost:3000, but my application would either give a 404 or just timeout. So, I googled and newsgrouped, but to no avail. Saw plenty of references to similar errors, 500 errors, etc. but no clear suggestion of a resolution.
So, I regrouped and used this packaged installer, which fixes the problems native to the OSX 10.4 install of ruby, and sets up the whole shebang all over again. Very nice way to go and if I had to do it again I’d just start here. Probably a completely separate install from the first one above tho, since the former instructions put everything in /usr/local. But I still couldn’t connect to my app. I imagined possible errors with FastCGI, so I followed these steps too. Nada.
(Of course, there’s Apple’s Developer pages which points to the first site I used but includes much more detail about application creation–but without Locomotive fwiw. Interesting, but I just wanted it to work first. Nothing was pointing me in the right direction.)
Then, last night about 4AM I woke up and thought “web permissions…the server doesn’t have permissions to the directory on my desktop.” Now, I never would have made this mistake with a normal html/cgi application, but new technology is always misleading somehow. I was working on my Desktop, instead of Library/Webserver/ like I shoulda been.
Now, Tony Arnold (the saviour who created the installer package I ended up using), has another page where he mentions permissions, but I guess I was in a hurry. But I don’t think any of the other sites mentioned this tiny but critical detail. Maybe they thought it was too obvious. But I can imagine lots of beginners simply going home in frustration after getting nowhere, if only they would cd to the right dir.
Then again, I was also bamboozled on my linux box by another simple problem: I was trying to connect to lightpd instead of apache as recommended, but you need to stop httpd and then start lightpd since they can’t both use port 80. boing.
Seems like it’s always 1% of the problem that causes 99% of the headache. It’s the little things.