Executer un script shell

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Executer un script shell

Re: Executer un script shell

par Se7en512 » 19 févr. 2016, 02:23

Merci bonne nuit à toi aussi ! Je pense que je chercherai demain, parce que j'ai la tête en compote :p.

Re: Executer un script shell

par Saian » 19 févr. 2016, 02:22

Je t'en prie, j'espère que tu vas trouver ! :)
Bonne nuit ^^

Re: Executer un script shell

par Se7en512 » 19 févr. 2016, 02:21

Je confirme que ça fonctionne en ligne de commande (même s'il m'affiche "marche pas"), et fonctionne pas via le navigateur.

Bon je vais refouiller la conf nginx ! :).
Merci à tout cas pour l'aide c'est super cool !!

Re: Executer un script shell

par Saian » 19 févr. 2016, 02:19

Si ça fonctionne en ligne de commande avec php script.php mais pas dans le navigateur alors je pense que le problème vient de la configuration du serveur nginx.

Et tu devrais pas faire un if(exec()) comme si ça retournait un booléen car ce n'est pas le cas. ;)
Un echo serait probablement plus approprié en admettant que le script.sh ait une sortie. Ca réduirait le risque de confusion.

Re: Executer un script shell

par Se7en512 » 19 févr. 2016, 02:17

Tonnerre de dieu ! Il me renvoi "marche pas", mais le script est bien executé ! (bon c'est le principal).
Je ne comprend pas pourquoi, vu que tout à l'heure j'avais bien "./script.sh" d'appelé.
C'est peut-être l'appel en ligne de commande qui a fonctionné ... à vérifier

Re: Executer un script shell

par Saian » 19 févr. 2016, 02:15

Tu m'as mis ça (c'est écrit ./hello.sh not found) :
[...]
sh: ./hello.sh: not found
<font color='white'> marche pas </font>
[...]

Donc en ligne de commande ça affiche quoi en vrai ?

Re: Executer un script shell

par Se7en512 » 19 févr. 2016, 02:12

Oui en effet j'ai du tapé "script.sh" au lieu de "./script.sh"

Mais ça change rien .. il m'affiche "marche pas" u_______u"

Re: Executer un script shell

par Saian » 19 févr. 2016, 02:09

Oui car ton script c'est ./script.sh non ? La fatigue ;D

Re: Executer un script shell

par Se7en512 » 19 févr. 2016, 02:04

Ah non pardon il l'execute bien (la page PHP), autant pour moi :p

Bon bah on a une partie de l'explication, ça affiche :

[...]
sh: ./hello.sh: not found
<font color='white'> marche pas </font>
[...]


[EDIT] : si je fais un exec('ls') ça fonctionne, mais pas pour mon script. why ? (j'ai la tête en feu haha)
[EDIT²] : je confirme que le fichier php et le fichier .sh sont dans le meme repertoire ... je comprend pas pourquoi il répond qu'il ne le trouve pas O_O

Re: Executer un script shell

par Saian » 19 févr. 2016, 02:00

Genre il manque la balise <?php en haut du fichier ? ^^

Re: Executer un script shell

par Se7en512 » 19 févr. 2016, 01:59

Au lieu d'executer le script php, il m'affiche le contenu de mon fichier fichier x).

Re: Executer un script shell

par Saian » 19 févr. 2016, 01:56

Pour exécuter le script php en ligne de commande, c'est simplement :
php script.php

Re: Executer un script shell

par Se7en512 » 19 févr. 2016, 01:52

Comment executer ma page php en ligne de commande ? ^^

Rien dans le fichier error.log de nginx

Apparement le safe_mode a été abandonné depuis PHP 5.4.0 (http://php.net/manual/fr/ini.sect.safe-mode.php), mais j'ai tout de même vérifié, je n'ai aucune ligne safe_mode sauf pour le sql à l'état OFF.

Pour info j'ai testé en executant ton script hello.sh, ça marche pas :/ (chown + chmod bien sur). Le script :

#!/bin/sh
echo "HELLO"
exit 0

EDIT : version PHP 5.5.31

Re: Executer un script shell

par Saian » 19 févr. 2016, 01:42

Sous Apache.

Si tu exécutes le script php en ligne de commande ça fonctionne ou pas ?
Si ça fonctionne, le problème vient du serveur web.

EDIT tu as rien dans le log d'erreur nginx ? peut être une piste...
Peut être tu peux vérifier le safe_mode aussi (qu'il aurait fallu vérifier en premier ^^).
Note: Lorsque le safe mode est activé, vous pouvez uniquement exécuter des programmes qui se situent dans le dossier défini par safe_mode_exec_dir. Pour des raisons pratiques, il n'est actuellement pas permis d''avoir le composant .. dans le chemin de l'exécutable.

Re: Executer un script shell

par Se7en512 » 19 févr. 2016, 01:40

Réponse suite à ton EDIT :

Tu es sous apache ou nginx ?