CRON avec fichier PHP non fonctionnel

Bonjour,


Par ailleurs j'ai du coup testé le curl avec ce fichier php :

$ curl -O --max-redirect=10000 /dev/null "http://www.en-lieu-et.place/index.php?option=com_contentnotifications&task=notifications.createEmailQueue&password=password

ça c'est normale vu que"–max-redirect" n'existe pas avec curl…

Sinon une fois exécuté en bash, les logs et le fichier ça donne quoi (d'ailleurs le fichiers devrais être en 755 pour être sûr) ?

Et au passage la bonne commande devrais être :
> wget -O /dev/null --max-redirect=10000 "http://www.en-lieu-et.place/index.php?option=com_contentnotifications&task=notifications.sendEmails&password=password"

et non :
> wget -O --max-redirect=10000 /dev/null "http://www.en-lieu-et.place/index.php?option=com_contentnotifications&task=notifications.sendEmails&password=password"

comme dans votre premier post.

Cordialement, janus57

Bonjour à tous
Finalement le bash a fonctionné, une fois passé de php à autre.
Le log est celui-ci :

[2017-06-20 10:53:03] ## OVH ## START - 2017-06-20 10:53:03.462401 executing: /homez.184/sauvenay/./en-lieu-et.place/cli/email.sh
[2017-06-20 10:53:03] /dev/null: Scheme missing.
[2017-06-20 10:53:03] --2017-06-20 10:53:03-- http://www.en-lieu-et.place/index.php?option=com_contentnotifications&task=notifications.createEmailQueue&password=password
[2017-06-20 10:53:03] Resolving www.en-lieu-et.place… 213.186.33.19, 2001:41d0:1:1b00:213:186:33:19
[2017-06-20 10:53:03] Connecting to www.en-lieu-et.place|213.186.33.19|:80… connected.
[2017-06-20 10:53:03] HTTP request sent, awaiting response… 200 OK
[2017-06-20 10:53:03] Length: unspecified [text/html]
[2017-06-20 10:53:03] Saving to: “–max-redirect=10000”
[2017-06-20 10:53:03]
[2017-06-20 10:53:03] 0K 0.00 =0s
[2017-06-20 10:53:03]
[2017-06-20 10:53:03] 2017-06-20 10:53:03 (0.00 B/s) - “–max-redirect=10000” saved [0]
[2017-06-20 10:53:03]
[2017-06-20 10:53:03]
[2017-06-20 10:53:03] ## OVH ## END - 2017-06-20 10:53:03.663422 exitcode: 0

En effet le /dev/null semble lui poser problème, mais j'ai vérifié : l'ordre des éléments est bien celui demandé par le concepteur du module (donc je vais laisser, à priori, du moment que ça fonctionne…)

En tout cas, tout semble fonctionner comme prévu : le bash lance la commande qui donne l'ordre d'envoyer des emails.
Du coup je laisse tomber l'examen approfondi du curl (mais ça peut servir…)

Merci encore à vous tous d'avoir accordé tout ce temps à mon petit problème ! C'est vraiment très sympa !
Bonne journée !
Cyril

Bonjour,

Utilisez la syntaxe que j'ai donné car là le contrat vous enregistre un fichier à chaque appel (car j'ai fait le test sur mon VPS).

De plus si vous me croyez pas regardé la doc de wget plutôt que de copier/coller à l'aveugle un code donne sur un site (surtout que les erreurs peuvent arriver lors de la rédaction d'une doc).

Cordialement, janus57

Moi je veux bien, c'est vrai que copier coller bêtement n'est pas signe d'une grande intelligence (mais en ce domaine je ne la revendique pas, à vrai dire, malheureusement :smile: ) ; cependant, ne pensez-vous pas possible que ce soit le but de la manœuvre de la part du développeur : enregistrer un fichier à chaque appel ?

Bonjour,


cependant, ne pensez-vous pas possible que ce soit le but de la manœuvre de la part du développeur : enregistrer un fichier à chaque appel ?

Non sinon il n'y aurait pas /dev/null (qui est l'équivalent d'un trouble noir informatique, tout ce qui pointe vers /dev/null est détruit instantanément ) dans la commande.

Le plus le fichier créé se nomme "–max-redirect=10000" (cf: votre log).

Donc non clairement c'est une mauvaise commande qui a été fournie.

Cordialement, janus57

Il faut reconnaître que c'est bizarre. Leur site est pourtant sacrément précis. Je vais tenter comme vous dites, merci.
(J'étais en train de regarder les docs wget à la recherche de ces précisions pour y voir plus clair.)
Cordialement
Cyril

En effet on voit bien que le /dev/null doit être placé après le -O, dans la logique de la commande.
J'ai mis dans cet ordre, et j'attends que le cron fonctionne pour vous faire un retour.

On dirait bien que vous avez tapé dans le mille :

[2017-06-20 13:02:04] ## OVH ## START - 2017-06-20 13:02:04.060929 executing: /homez.184/sauvenay/./cron/sendemail.sh
[2017-06-20 13:02:04] --2017-06-20 13:02:04-- http://www.en-lieu-et.place/index.php?option=com_contentnotifications&task=notifications.sendEmails&password=password
[2017-06-20 13:02:04] Resolving www.en-lieu-et.place… 213.186.33.19, 2001:41d0:1:1b00:213:186:33:19
[2017-06-20 13:02:04] Connecting to www.en-lieu-et.place|213.186.33.19|:80… connected.
[2017-06-20 13:02:04] HTTP request sent, awaiting response… 200 OK
[2017-06-20 13:02:04] Length: unspecified [text/html]
[2017-06-20 13:02:04] Saving to: “/dev/null”
[2017-06-20 13:02:04]
[2017-06-20 13:02:04] 0K 0.00 =0s
[2017-06-20 13:02:04]
[2017-06-20 13:02:04] 2017-06-20 13:02:04 (0.00 B/s) - “/dev/null” saved [0]
[2017-06-20 13:02:04]
[2017-06-20 13:02:04]
[2017-06-20 13:02:04] ## OVH ## END - 2017-06-20 13:02:04.384272 exitcode: 0

Ca fonctionne parfaitement, et sans création de fichier bizarre semble-t-il !

Merci beaucoup !
Cordialement
Cyril

Salut à tous,

Pour ceux qui ont un soucis vous avez aussi des services qui proposent de jouer vos crons en ligne à des fréquences allant jusqu'à la minute.

Vous avez par exemple https://schedio.sycanet.fr ou https://cron-job.org/en/