views:

40

answers:

1

INSTALLING CAKEPHP FOR DUMMIES

If you are like me, you are frustrated with these frameworks like Ruby on Rails and CakePHP, which promise rapid development, despite sluggish start - simply spending hours on install.

To get CakePHP running, throw out the tutorials and don't even bother buying the books or reading the documentation. None of them mention to do exactly this but this is what needs to be done on Mac 10.6.2:

1) Install CakePHP to Sites and unzip it. Rename it to your application name.
2) Now your httpd.conf file can be located anywhere on your mac. Each tutorial assumes it's located at some place in the depths of virtual reality. But in reality all you need to do is use the handy unix command locate from the terminal: locate httpd.conf
4) Then whip out your editor: mate httpd.conf
5) make sure your DocumentRoot says this: DocumentRoot "/Library/WebServer/Documents"
6) make sure under Directory it says AllowOveride All and Allow from all. It should have this by default but you never know when your sister randomly screws with your computer. Just be glad you have a mac and don't have to deal with her infesting your computer with viruses. 
7) Obviously you want the php module uncommented: LoadModule php5_module        libexec/apache2/libphp5.so
8) Now if you're like me, you dont want to type http://localhost/~jmerlino/mysite. You want to type http://localhost/mysite. So launch the hosts file. Again all you have to do is locate /etc/hosts and then mate /etc/hosts, assuming you're using TextMate. If you're using BBEdit, then obviously you won't be using the mate command.
9) Add this line: 127.0.0.1 localhost/mysite. This allows you to now use http://localhost/mysite.
10) Now the crazy part. find yur username.conf. For me, it's /etc/apache2/users/username.conf. For you, you do locate and make sure it's same spot. 
11) Add the following:
<VirtualHost *:80>
ServerName localhost/sitename
DocumentRoot "/Users/username/Sites/"
</VirtualHost>
12) Don't put username. Put whatever your user name is. 
13) Then run your app off http://localhost/mysite.
14) Don't forget to sudo apachectl restart when you're finished. 

If you have anymore issues, it doesn't mean you should give up programming and become a pipe cleaner. Just keep trying. Just remember you won't find the solution in one online tutorial.

A: 

I would advice you to follow the installation instructions from the bakery and setup from this blog. Also take a look at this ticket.

bancer
Your instructions say depress in /Library/WebServer/DocumentsSo I doIt says In /Library/WebServer/Documents type:ln -s /Users/username/Sites/cake cakeSo I doThen edit your httpd.conf file. That's located here. /etc/httpd/httpd.confUnfortunately, there is no such file located there. The file is located in /private/etc/apache2/httpd.confSo I go there and make following change:DocumentRoot "/Library/WebServer/Documents/cake/app/webroot" AllowOverride All was already set to Allsudo apachectl restartNow I get Unable to Connect page
JohnMerlino
Now I can't connect at all.
JohnMerlino
I changed DocumentRoot back to /Users/jmerlino/Sites and now it seems to be working. None of the tutorials I have read and none of the turorials you provided above mention to do this. However, it was that stackoverflow link you sent with the third question down that ultimately reminded me to check to see /Users/jmerlino/Sites.
JohnMerlino
I give you accepted answer. But the bakery link and blog you posted are outdated. It's the stackoverflow link you provided that offered the solution. And it was really the comment at the very bottom which had the solution, not even the one who was given the solution.
JohnMerlino