Problème de config

Nginx ne me laisse pas accéder aux routes de Symfony2

a marqué ce sujet comme résolu.

Hello tout le monde :)

Je viens vous demander un peu d'aide parce que ça fait quelques temps que je pédale dans la semoule avec une machine virtuelle sous Ubuntu 14.04. J'utilise Vagrant, et PuPHPet pour générer les fichiers de configuration.

C'est une machine virtuelle qui me sert à émuler une config serveur (nginx) afin de développer plus simplement et optimiser les passages dev->production.

Ça avait l'air de fonctionner correctement jusqu'à ce que j'essaye de développer sous Symfony2. J'arrive à accéder à app_dev.php, mais n'importe quelle route est inaccessible : nginx me fait télécharger un fichier à la place.

Déclenchement du bug lors du clic sur Configure

Les multiples bidouilles que j'ai effectué suite à maintes recherches n'ont abouti à rien. Voilà le fichier de configuration nginx que j'ai essayé :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
upstream phpfcgi {
    server 127.0.0.1:9000;
}
server {
    listen 80;

    server_name symfony2;
    root /var/www/Symfony/web;

    error_log /var/log/nginx/symfony2.error.log;
    access_log /var/log/nginx/symfony2.access.log;

    rewrite ^/app\.php/?(.*)$ /$1 permanent;

    location / {
        index app.php;
        try_files $uri @rewriteapp;
    }

    location @rewriteapp {
        rewrite ^(.*)$ /app.php/$1 last;
    }

    location ~ ^/(app|app_dev|config)\.php(/|$) {
        fastcgi_pass phpfcgi;
        fastcgi_split_path_info ^(.+\.php)(/.*)$;
        include fastcgi_params;
        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param  HTTPS off;
    }
}

Rien ne semble concluant. Si vous avez des idées ou que vous connaissez le problème, j'espère que vous pourrez me filer un coup de main !

Merci :)

Apparemment il n’interprète pas bien le PHP. Il pourrait que ta page soit en cache pour une raison ou une autre et que les autres ne puissent pas être interprétées. Que donne un phpinfo() ?

+0 -0

ha tiens, j'ai le même probleme, mais pas du tout avec la même config (j'utilise même pas symphony 2 et je suis pas dans une VM). je suis le sujet, on sait jamais, si la réponse qui t'est apportée résolvait mon probleme à moi… le monde serait fou :P

+0 -0

Si ton phpinfo() s'affiche bien, le problème n'est pas du côté de php a priori. Peux-tu essayer de vider le cache à fond et re-tester ? Si cela ne change rien, je pense que le problème est lié à ton appli, mais il semble étonnant quand même.

+0 -0

Vider le cache ne change rien, c'est une des premières choses que j'ai tenté. :p C'est une installation de Symfony2 toute neuve que j'utilise justement pour le debug de ce problème, il n'y a rien derrière, seulement le framework avec ses routes de base.

Du coup je pensais plus à une config foireuse de nginx.

Oui, mais a priori il interprète bien le php donc ça semble bizarre qu'il te propose de télécharger, car c'est typique d'un serveur qui ne reconnait pas l'extension .php Sans plus d'infos je sèche un peu :(

+0 -0

J'y ai pensé, j'ai testé pas mal de règles de réécritures, mais ça ne change rien. Les fichiers qu'il me fait télécharger sont bidons, il n'y a absolument rien dedans, ils portent soit le nom de la route à laquelle j'essaye d'accéder soit "téléchargement".

L'adresse ne change pas, quoi que je fasse.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte