Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour, j'ai suivi le tutoriel pour le quickstart et il n'y a pas de fichier index.php et .htacess, est-ce normal et inutile pour cette version de Zend?
Je demande ça parce que j'avais l'habitude d'en utiliser avec la version 1.9 et sans ça, quand j'essaie d'accéder à cette URL par exemple:
http://127.0.0.1/~*/quickstart/
J'obtiens seulement la description de mon projet(détail des fichiers).
Hors ligne
Si, il y a toujours un index.php, sans lui ton appli ne pourra pas marcher.
Hors ligne
Les fichiers index.php et .htaccess sont dans le dossier public, qui doit être mis en document root dans le virtualhost... Le problème c'est qu'il faut lire l'intégralité du Quick Start...
Si il n'y a pas possibilité de modifier le virtualhost, comme c'est parfois le cas sur les serveurs d'hébergement mutualisé (de moins en moins quand même), il faut se tourner vers une solution alternative comme celle proposée par Rob Allen (En) que j'ai traduit en français sur mon blog : Zend Framework sur un hébergement mutualisé.
Hors ligne
Désolé de ne répondre que maintenant mais retour de vacances..
J'ai suivi le tutoriel du quickstart et j'ai ajouté à mon VirtualHost ceci:
<Directory /home/***/public_html/site/public> DirectoryIndex index.php AllowOverride All Order allow,deny Allow from all </Directory>
J'obtiens le problème que quand je me dirige avec mon navigateur sur mon projet "site" avec cette URL:
http://127.0.0.1/~***/site/
J'ai la liste des fichiers et répertoire de mon projet et non la méthode d'action index de mon controlleur index.
Qu'est-ce qui ne va pas?
Voilà mon VirtualHost:
<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName site.local DocumentRoot /home/***/public_html/site/public SetEnv APPLICATION_ENV "development" DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory> <Directory /home/***/public_html/site/public> DirectoryIndex index.php AllowOverride All Order allow,deny Allow from all </Directory> </VirtualHost>
Hors ligne
En fait en appelant le site de cette manière, vous n'utilisez pas votre virtualhost... D'où le problème en question...
Il faut appeler site.local comme url, et que la résolution de nom (fichier host) soit configuré pour que site.host pointe vers 127.0.0.1
Hors ligne
Quel est votre système d'exploitation ?
Avez vous quoi que ce soit qui s'affiche lorsque vous entrez http://site.local dans votre navigateur ?
Hors ligne
Dans ta console, tu vas entrer :
gksudo gedit /etc/hosts
Dans ce fichier, tu mets la ligne suivante :
127.0.0.1 site.local
Tu sauves tout ça et normalement en mettant l'url site.local tu tombes sur ton site. Si ça ne marche pas, essaye de mettre "sudo /etc/init.d/networking restart" pour que les modifications du hosts soient prises en compte.
Hors ligne
J'ai modifié le fichier et maintenant j'obtiens cette page même avec la seconde commande:
It works!
This is the default web page for this server.
The web server software is running but no content has been added, yet.
Hors ligne
Cela signifie que ta résolution DNS est bonne, donc c'est ton serveur Apache qui redirige mal la demande.
Là, tu passes dans default...
As-tu mis dans une console :
sudo a2ensite nom_de_ton_fichier_de_vhost
Puis
sudo /etc/init.d/apache2 restart
Hors ligne
Pourtant j'ai d'autres projets avec la version 1.9 il me semble et ca fonctionne bien donc le serveur Apache redirige bien pour la version 1.9 mais pas la 1.11.9?
Je n'ai jamais rentré cette commande, je suppose qu'il faut que je le fasse?
Là où est mon fichier VirtualHost est dans "/etc/apache2/sites-enables/000-default"
Hors ligne
Oula... Il ne faut pas définir tes VHosts la dedans...
Les modifications se font dans /etc/apache2/sites-availables/..., puis on redémarre le serveur apache pour mettre en place les vhosts...
Tu devrais lire la doc sur ubuntu-fr.org !
Hors ligne
Non, tu avais seulement un fichier 000default qui contenait les informations du VHost par défaut, il n'y avait rien d'autre dedans, et ça n'a rien à voir avec la version d'Ubuntu que tu utilises.
Par contre tu aurais du ajouter les autres dans les sites availables, puis redémarrer Apache et là tes modifications seront reportées dans sites-enabled
Hors ligne
Je pense qu'il vaut mieux que je lise la documentation.
Il faut que je regarde à comment configurer Apache mais quelle documentation précisément parce qu'il y en a plein?
Hors ligne
Virtualhosts avec Apache2
Le paragraphe qui va t'intéresser est le virtualhost basé sur le nom.
Normalement tu trouveras le même genre d'informations que celles que je viens de te fournir.
Si tu as besoin de plus de renseignements, hésites pas !
Hors ligne
Je suis en train de suivre le tutoriel mais je ne comprends pas pourquoi il y a besoin de configurer plusieurs VirtualHost avec la version 1.11.9 de Zend alors que ce n'est pas le cas avec la 1.9 par exemple?
Hors ligne
Personnellement je me souviens avoir utilisé les vitualhosts dès que j'ai attaqué Zend Framework, soit sur la 1.5...
Avec la 1.9 la même problématique existait...
Hors ligne
J'avais appris un peu le Zend à mon école (version 1.9) et on avait un projet à terminer chez nous et il fonctionnait correctement.
J'ai remarqué qu'en prenant l'index.php et le .htaccess de mes projets en version 1.9 et en le ettant à la racine de ceux en 1.11.9, ca fonctionne..
Hors ligne
C'est que tu avais du suivre une procédure du genre de celle que je t'ai passé dans mon premier post permettant de rediriger les demandes et les documents root.
Hors ligne
Je pense que je vais rester comme ça pour le moment (fichiers index.php et .htacces à la racine du projet) comme je vais dans une licence pro Zend à partir de septembre donc je devrais sûrement avoir des cours là dessus.
Hors ligne
Une licence pro Zend, c'est quoi ça ? :s
Hors ligne