2010-10-22 5 views
4

INSTALLATION CAKEPHP POUR LES NULSMISE À JOUR CakePHP - L'URL demandée n'a pas été trouvée sur ce serveur

Si vous êtes comme moi, vous êtes frustrés par ces cadres comme Ruby on Rails et CakePHP, qui promettent un développement rapide, en dépit de départ lent - simplement passer des heures sur l'installation.

Pour que CakePHP fonctionne, jetez les tutoriels et n'essayez même pas d'acheter les livres ou de lire la documentation. Aucun d'entre eux mentionnent faire exactement cela, mais voici ce qui doit être fait sur 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. 

Si vous avez plus des questions, cela ne signifie pas que vous devez renoncer à la programmation et de devenir un cure-pipe . Continue d'essayer. N'oubliez pas que vous ne trouverez pas la solution dans un didacticiel en ligne.

+0

essayez de supprimer 'app/webroot' de votre paramètre' DocumentRoot'? ou ces dossiers existent-ils réellement? – drudge

+0

J'ai essayé de le retirer du paramètre DocumentRoot. Et bizarrement, cette erreur est restée. Et oui ces fichiers existent. Je l'ai essayé sur un autre navigateur parce que je pensais que les cookies étaient peut-être en cause. J'ai également redémarré Apache. Mais toujours la même erreur remaniée malgré la suppression de app/webroot de documentroot. – JohnMerlino

Répondre

0

Je vous conseille de suivre les instructions d'installation du bakery et de configurer à partir du blog this. Jetez également un coup d'oeil à ce ticket.

+0

Vos instructions disent déprimer dans/Bibliothèque/WebServer/Documents donc je fais Il dit dans/Library/WebServer/Type de documents: ln -s/Users/nom d'utilisateur/Sites/gâteau gâteau Je ne modifier ensuite votre Fichier httpd.conf C'est situé ici. /etc/httpd/httpd.conf Malheureusement, il n'existe aucun fichier de ce type. Le fichier se trouve dans /private/etc/apache2/httpd.conf Je vais là et faire le changement suivant: DocumentRoot "/ Library/WebServer/Documents/cake/app/webroot" AllowOverride Tout était déjà réglé sur Tous sudo apachectl restart Maintenant, je ne parviens pas à se connecter page – JohnMerlino

+0

Maintenant, je ne peux pas me connecter du tout. – JohnMerlino

+0

J'ai changé DocumentRoot en/Users/jmerlino/Sites et maintenant il semble fonctionner. Aucun des tutoriels que j'ai lu et aucun des turorials que vous avez mentionnés ci-dessus ne mentionne cela. Cependant, c'est ce lien stackoverflow que vous avez envoyé avec la troisième question vers le bas qui m'a finalement rappelé de vérifier pour voir/Users/jmerlino/Sites. – JohnMerlino

0

Modifier document_root dans la configuration de votre serveur Web. par exemple: document_root /var/www

Changez cela en document_root /var/www/cake. Le document_root doit pointer vers votre projet.

0

modifier le fichier core.php dans app/config/core.php

trouver cette ligne dans le code define ('absolute_url', FULL_BASE_URL ""); et le changer en define('ABSOLUTE_URL',FULL_BASE_URL."subdirectory_name"); par exemple: define('ABSOLUTE_URL',FULL_BASE_URL."/cake");