j'ai trouvé, il faut remplacer le break par last, afin que php s'execute....
Hello World,
Alors voila je suis sur Nginx avec php7.0
j'ai un fichier php qui génére un fichier texte et pour l'appeler par l'url je fais monfichier.txt "qui est en fait du php"
j'ai donc une rêgle de rewrite dans ma conf Nginx
rewrite ^/monfichier.txt /monfichier.php break;
Ce que je veux
Que monfichier.txt qui "qui est bien monfichier.php" s'execute et s'affiche dans le navigateur
Ce que j'obtiens
Le téléchargement d'un fichier monfichier.txt avec le code php non exécuté dedans,
on même temps ca peut sembler logique, mais sous apache ça marchait comme ça....
Une idée ? Merci à vous.
Franck
5 réponses
En effet c'est une histoire de regex :) le ^ veut dire que ton url doit absolument commencer par /sousdossier/monfichier.txt
tu trouveras comment faire ici :) http://stackoverflow.com/questions/13706658/variable-capture-in-nginx-location-matching
Effectivement, tu peux faire de deux façons:
Merci Yanis pour ce retour !
j'en profite pour te poser une seconde question,
avec un bloc sur un dossier
Ce code marche :
Ce code marche pas "rewrite en relatif"
Merci.
Franck
Merci à toi !