bonjour je suis débutant je voudrais pouvoir automatiser certaines taches sur mon site
j'ai lu la doc ovh
quand j'essaie d'installer une tache du type
php /path/to/mautic/app/console mautic:segments:update
il me renvoie un message
Les caractères acceptés pour les dossiers sont les lettres, les chiffres, et les caractères -_./ Par ailleurs, il est interdit d'accéder aux dossiers parents en utilisant ..
les espaces et les : ne sont pas accepté ?
je ne sais pas je suis débutant ..
Hébergements Web - Saisie des cron jobs dans l'interface ovh
Related questions
- Connexion à mon compte client
153185
13.02.2019 09:51
- Serveur non sécurisé, celui-ci ne supporte pas FTP sur TLS
126535
03.09.2018 14:46
- reCAPTCHA erreur pour le propriétaire du site : clé de site non valide
110805
14.02.2019 16:17
- [FAQ] Comment mettre à jour mon site pour supporter Apache 2.4 ?
98193
28.07.2017 11:39
- Passage en php 7.4
97322
30.06.2020 05:05
- Augmenter taille PHP Post Max Size sur mutualisé ?
91689
04.12.2019 21:52
- The requested URL / was not found on this server
90811
02.03.2017 18:25
- Deploy d'un projet Node JS
90810
12.10.2016 20:18
- NextCloud sur mutualisé
90734
07.04.2017 08:42
- Ce site est inaccessible Impossible de trouver l'adresse DNS du serveur
90468
16.10.2016 16:24
il y a de fortes chances. à tester.
les caractères en dehors de [a-zA-Z][0-9][ -_] sont à éviter car même s'ils pont possibles sous unix, ça n'est pas confortable de les utiliser (espace à échapper par exemple).
merci pour la réponse
si je comprends bien il me faut remplacer les espaces et les : par un . ?
non, le . fait référence au répertoire courant
couramment pour des séparations, on utilise les tirets: -_
merci je vais tester !
https://perso.1rennes1.fr/pascal.gentil/unix/index.html#fichiersrennes1.fr/pascal.gentil/unix/index.html#fichiers
Bonjour,
Il faut indiquer le chemin d'un fichier et non d'une commande dans l'interface OVH.
Cordialement, janus57
la commande doit être dans le fichier alors ?
je met toutes mes commandes dans un fichier et j'indique le chemin du fichier à exécuter dans l'interface ovh ?
ce que je veux faire c'est automatiser des taches pour une installation de mautic mais je ne suis pas un pro de l'informatique
j'ai la syntaxe générale dans la doc mautic et j'essaie d'apprendre
merci pour réponse
à priori, oui, LES commandes dans UN fichier
mais quelque chose à **BIEN PENSER**, le cron lance le fichier de commandes en dehors de ton espace personnel. il faut donc bien raisonner en chemins **absolus** (donc pas en chemins relatifs), de même il n'aura pas accès à des variables d'environnement utilisateur
il est à priori possible, si ssh dispo sur ton hébergement, d'utiliser git clone pour simplifier la tache d'installation
ok merci pour les infos est que le fichier doit avoir un intitulé et une extension particulière ?
nom et extension sans importance
indiquer le langage dans le choix prévu à cet effet.
quel langage utilisé?
c'est du php !
mais comment obtenir le bon chemin absolu vers le fichier ?
voici toutes les commandes que je veux placer dans le fichier
pdating Segments
php /path/to/mautic/app/console mautic:segments:update
php /path/to/mautic/app/console mautic:campaigns:rebuild
php /path/to/mautic/app/console mautic:campaigns:trigger
php app/console mautic:integration:fetchleads
php app/console mautic:integration:pushleadactivity
http://php.net/manual/fr/function.getcwd.php
la doc php est une bible annotée par les utilisateurs, il faut s'en gaver sans modération ;)
Bonjour,
ce que tu peux faire c'est créer pour chaque tâche cron un fichier php
par exemple : mautic_segments_update.php
et tu met dedans :
passthru("php /path/to/mautic/app/console mautic:segments:update");
Tu n'as pas besoin de fermer la balise PHP et je ne pense pas que tu as besoin d'ajouter le chemin de php car lorsque tu ajoutes un cron sur OVH il te demande le langage à utiliser.
Tu met ce fichier dans un dossier que tu nommes par exemple "crons".
Tu peux appeler cette page depuis ton navigateur pour tester le bon fonctionnement.
Ensuite une fois que tout est OK, tu ajoutes un .htaccess à la racine de ce dossier "crons" pour bloquer l'accès depuis un navigateur :
Order allow,deny
deny from all
Cordialement,
Boris.
Merci pour ton aide
merci beaucoup je vais essayer
j'ai créé le fichier je l'ai placé dans le répertoire crons j'ai créé la commande d'appel chez ovh en précisant le répertoire
dans la ligne de commande php le path/to/mautic c'est bien le chemin absolu des serveurs ovh ? je l'obtient en allant chercher dans les logs ?
selon la doc php dont je t'ai donné le lien, quels exemples:
```
$path = getcwd();
echo 'path: '.$path.'
';
// autre manière
$path = dirname(__FILE__);
echo 'path: '.$path.'
';
passthru("php $path/mautic ....
```
$path = dirname(__DIR__);
passthru("php $path/app/console mautic:segments:update");
- \_\_DIR\_\_ nous donne le chemin absolu de ton dossier "crons"
- dirname(\_\_DIR\_\_) nous donne le chemin absolu du dossier contenant le dossier "crons".
Donc si tu as créé le dossier "crons" à la racine de ton application, alors $path contient le chemin absolu de ton application.
merci beaucoup !!
c'est top
mercii ... beaucoup
merci à tous ceux qui m'ont donné les bonnes infos grace à vous tout fonctionne impeccablement
c'est super
question aux pros de la communauté
quand je regarde les logs de mes cron jobs j'obtient ceci
[2018-08-29 14:20:02] $path = dirname(__DIR__);
[2018-08-29 14:20:02] passthru("php $path/app/console mautic:segments:update --env=prod");
[2018-08-29 13:57:02] ÿþ[2018-08-29 13:57:02] $path = dirname(__DIR__);
[2018-08-29 13:57:02] passthru("php $path/app/console mautic:campaigns:trigger --env=prod -campaign-id=ID");
que signifie le ÿþ
Cela signifie que tu as rédigé ton script avec une mauvaise option de codage (probablement UTF-8 avec BOM). Le codage ANSI est recommandé.
merci comment modifier l'option de codage
que faut il utiliser comme editeur de texte j'ai textedit ou dreamweaver ?
en choisissant du utf-8 simple
textedit est capable d'enregistrer en utf-8 par défaut, mais ce n'est pas qu'un éditeur de texte only
je ne connais pas Mac, mais un éditeur de texte, genre Atom.io par exemple
j'ai utilisé dreamweaver je pense que c'est bon merci beaucoup pour ton aide
je te dis si ça marche d'ici qq heures
Textedit possède une option d'encodage.
voilà ce que j'ai comme log maintenant
executing www/crons/mautic_segments_update.php
[2018-08-30 09:20:02] Status: 404
[2018-08-30 09:20:02] X-Powered-By: PHP/4.4.9
[2018-08-30 09:20:02] Content-type: text/html
[2018-08-30 09:20:02]
[2018-08-30 09:20:02] No input file specified.
merci pour votre aide
merci
je crois que c'est encore un pb de format
je vais utiliser l'éditeur atom.io
finalement j'ai configure text edit atom ça l'air super mais un peu compliqué de prime abord
j'avance mais ce n'est pas encore ça
j'ai compris que les crons devaient être dans le répertoire de l'appli
mais j'ai une erreur de syntaxe dans l'exécution de mon fichier
voila la syntaxe
$path = dirname(__DIR__);
passthru("php $path/app/console mautic:integration:fetchleads");
voilà l'erreur
[2018-08-30 16:20:02] ## OVH ## END - 2018-08-30 14:20:02.107729 exitcode: 0
[2018-08-30 16:24:02] ## OVH ## START - 2018-08-30 16:24:02.840330 executing: /usr/local/php5.6/bin/php /.........../www/mautic/crons/mautic_synchro.php
[2018-08-30 16:24:02] X-Powered-By: PHP/4.4.9
[2018-08-30 16:24:02] Content-type: text/html
[2018-08-30 16:24:02]
[2018-08-30 16:24:02]
[2018-08-30 16:24:02] Parse error: syntax error, unexpected T_STRING, expecting T_CONSTANT_ENCAPSED_STRING or '(' in /home/esully/www/mautic/app/console on line
en regardant les forums on me dit que j'aurais oublé un ; ou une " ou une ' mais je ne vois pas bien ou
X-Powered-By: PHP/4.4.9 ??
pourquoi cette version de php ?
vous le savez ?
C'est la version que tu as choisi pour le cron, non ?
pas du tout j'ai saisi 5.6 comme mon hébergement !
j'ai contacté l'assistance mais je n'ai pas de réponses ...
au hasard:
`.ovhconfig` dans la racine. c'est bien stable ou testing et non legacy?
autre manière de voir, manager Ovh , hébergement/infos générales, modifier la configuration
merci pour le suivi
voici mon ovh config
app.engine=php
app.engine.version=5.6
http.firewall=none
environment=production
container.image=legacy
la version du php dans gébergement/info générale est php 5.6
je crois savoir que les crons sont éxécutes en dehors de mon hébergement est ce que ça change qq chose ? je ne sais pas
je n'ai pas de réponses du support non plus !
j'attend
Essayes de mettre le chemin complet de l'exécutable php
`passthru("/usr/local/php5.6/bin/php $path/app/console mautic:integration:fetchleads");`
Cdlt,
Boris.
ok merci j'essaye de suite !
après mais je dis ça au hasard:
peut-être passer en stable, car legacy ça doit dater :/
et ça expliquerait peut être quelques problèmes que tu rencontres?
avec le chemin complet de l'exécutable php celà semble fonctionner
passer en stable en modifiant environment ?
en tout cas merci pour l'aide car seul je n'y serais pas du tout !!
oui: Environnement d'exécution dans le manager
à tester