Pages : 1
#1 Le 23/03/2020, à 08:54
- totolezero
[résolu] nginx + PHP + python
Bonjour chers confinés,
Petit soucis :
J'ai une page PHP qui exécute du python :
$command = escapeshellcmd('/chemin/vers/monscript.py');
$output = shell_exec($command);
echo $output;
Tout marche nickel.
Sauf que, si je tape dans le navigateur :
http://adresse/monscript.py
Là, le navigateur me propose d'ouvrir ou enregistrer le fichier monscript.py.
J'ai donc changé les droits de lecture ou exécution sur ce fichier, mais alors, dans ce cas, le script ne s'exécute plus.
Comment faire ?
Dernière modification par totolezero (Le 24/03/2020, à 08:29)
Hors ligne
#2 Le 24/03/2020, à 07:29
- totolezero
Re : [résolu] nginx + PHP + python
Je précise ma question :
Vu le niveau de sécurité de ce comportement (script avec données sensibles visible dans l'explorateur), comment faire pour que ce script soit exécuter par PHP, mais non visible dans l'explorateur.
Dossier dans lequel se trouve mon script :
ls -al
drwxr-x--- 2 root www-data 4096 mars 23 08:25 .
drwxr-xr-x 3 root root 4096 mars 23 08:06 ..
-r-x------ 1 www-data www-data 35 mars 23 07:31 toto.py
voili, voilou...
Hors ligne
#3 Le 24/03/2020, à 08:28
- totolezero
Re : [résolu] nginx + PHP + python
Ouf, j'ai résolu le problème tout seul...
En fait dans nginx, j'ai réduit les droits pour le dossier /script ainsi que les extensions .py :
location /script {
return 404;
}
location ~ /script/\.py$ {
return 404;
}
Et là, impeccable, une erreur 404 s'affiche lorsqu'on accède à :
http://monsite/script
ou
http://monsite/script/toto.py
alors que mon script s'exécute bien dans ma page PHP.
Cool.
Je mets en résolu.
Hors ligne
Pages : 1