Déclenchement travaux planifiés

Bonjour à tous,

J’ai une offre d’hébergement perso2014 chez ovh, avec un doli v16.0.5
Globalement, pas de soucis avec le doli, si ce n’est que les travaux planifiés ne sont pas déclenchés par le cron mis en place chez ovh.

J’ai créé un fichier cron.php dans lequel j’ai mis les infos suivantes :
/usr/local/php7.4/bin/php
/homez.XXXX/xxxxxx/www/crm/scripts/cron/cron_run_jobs.php XXXXXXXXXXXXXX AdminXXXXX > /homez.XXXX/xxxxxx/www/crm/documents/cron_run_jobs.php.log

Et comme résultat, j’ai un exit code 0 mais pas de déclenchement des travaux.

Je loupe peut être quelque chose, donc je sollicite un œil neuf sur le problème si vous avez un peu de temps à me consacrer.

Bonne journée

Hello,
si vous voulez tester un webcron (il en existe d’autres) celui ci est dédié dolibarr. Je l’ai développé pour les hébergements où justement le cron n’est pas « fiable » ou « compliqué à mettre en oeuvre »…

https://webcron.dolizen.fr/

Voir le fichier cron php spécifique à OVH :

#!/usr/bin/env php
<?php
function call_url($url) {
    $c = curl_init();
    curl_setopt($c, CURLOPT_URL, $url);
    curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($c, CURLOPT_HEADER, false);
    curl_setopt($c, CURLOPT_FOLLOWLOCATION, true);
    $output = curl_exec($c);
    if($output === false)
        trigger_error('Erreur curl : '.curl_error($c),E_USER_WARNING);
    else
        var_dump($output);
    curl_close($c);
}

call_url ("https://URLDOLIBARR/public/cron/cron_run_jobs_by_url.php?securitykey=SECURITYKEY&userlogin=USERLOGIN");

Bonjour à vous deux,

merci pour les réponses. Je vais tester les deux et ferai un retour.

Bonne journée

Je viens de tester les deux solutions.

@libremaster Pour la fonction curl, j’ai le retour suivant :

LOG CRON
[2023-04-21 15:12:02] string(199) "
[2023-04-21 15:12:02]
[2023-04-21 15:12:02] 403 Forbidden
[2023-04-21 15:12:02]
[2023-04-21 15:12:02]

Forbidden


[2023-04-21 15:12:02]

You don’t have permission to access this resource.


[2023-04-21 15:12:02]
[2023-04-21 15:12:02] "
[2023-04-21 15:12:02]
[2023-04-21 15:12:02] ## OVH ## END - 2023-04-21 15:12:03.100174 exitcode: 0

LOG SERVEUR WEB OVH
[Fri Apr 21 15:12:03 2023] [error] [client 91.134.248.211] ModSecurity: Access denied with code 403 (phase 2). Operator EQ matched 0 at REQUEST_HEADERS. [file « /usr/local/apache2/conf/modsecurity/base_rules/modsecurity_crs_21_protocol_anomalies.conf »] [line « 65 »] [id « 960009 »] [rev « 2.1.1 »] [msg « Request Missing a User Agent Header »] [severity « NOTICE »] [tag « PROTOCOL_VIOLATION/MISSING_HEADER_UA »] [tag « WASCTC/WASC-21 »] [tag « OWASP_TOP_10/A7 »] [tag « PCI/6.5.10 »] [hostname « xxxxxxxxxxx »] [uri « /public/cron/cron_run_jobs_by_url.php »] [unique_id « ZEKLo6t7jdSg-Dx@ce38kgAAACc »]

Je suis aller voir les permissions sur les dossiers (755) et sur le fichier appelé par l’url (755).
Mais je suppute un blocage du côté d’OVH, vu la tête de l’extrait de log du serveur web.

@erics J’ai créé un compte puis j’ai testé, ça fonctionne bien. Quelle est la récurrence d’exécution ? Car je n’ai pas trouvé de config permettant de planifier l’exécution automatique.

Merci encore pour le temps accordé.

Pour l’instant c’est une fois par jour, petit à petit les fonctionnalités vont venir au gréé des dispo et des contributions :slight_smile:

C’est tout simplement le module modsecurity installé pour apache qui bloque votre requête envoyée par curl car elle est suspicieuse.
Modsecurity servant par exemple à détecter des attaques par injection.

Ce n’est pas un « blocage » mais une mesure de sécurité.
Il est possible de désactiver modsecurity chez OVH mais je vous le déconseille fortement.

Merci pour le retour @pascal_z , effectivement mieux veut laisser le firewall applicatif en place.

Quel serait le code à utiliser alors d’après vous, afin de déclencher les travaux planifiés ?

Citation
Pour l’instant c’est une fois par jour, petit à petit les fonctionnalités vont venir au gréé des dispo et des contributions :slight_smile:

Merci beaucoup pour la mise à dispo et le temps passé pour mettre en place l’outil.

Bonjour

Les hébergements mutualisés d’OVH ont un mod_security avec apache qui bloque les appels sans user agent.
Il faudrait essayer d’en ajouter dans les paramètres de l’appel avec curl.

Fred

Bonjour Frederic,

Je vais essayer ça.

Merci pour la réponse

@libremaster
Merci pour la solution, ca fonctionne de mon côté (je suis en mutualité sous OVH).