: Tuto Par :
Créer une tache web cron chez OVH avec paramètres

J'ai été bien embêter avec un client. Il à un pretashop sur une mutualisé performance d'OVH, il possède le plugin amazon et j'ai donc tout naturellement, comme préconisé, voulu créer des tâches Cron.

Probleme, ches OVH il y a deux grosses limitation :

  1. On ne peut que appeler un fichier .php
  2. Celui ci ne peut pas avoir de paramètre

Pour contourner ce problème j'ai donc créer/imaginé/trouvé et modifié un script qui vas me faire le travail.

Créer le fichier sur votre serveur

De préférence à la racine de votre site mais surtout accécible via internet, nommez le cron-ovh.php (ou autre ça n'a pas d'importance)

Et mettez y ceci :

<?php

echo 'La requête démarre ';

echo request("https://votre-beau-site.fr/chemin/vers/votre/php/cron-ovh.php?vosvariables=miaou-test-pouet&test=miaou");

echo 'Fini';

function request($url) {
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_VERBOSE, 1);

    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.2) AppleWebKit/536.6 (KHTML, like Gecko) Chrome/20.0.1090.0 Safari/536.6');

    $result = curl_exec($ch);
    $statuscode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    $statustext = curl_getinfo($ch);
    curl_close($ch);
    if ($statuscode != 200) {
        echo "HTTP ERROR " . $statuscode . "<br>";
        echo "<pre>";
        echo var_dump($statustext);
        echo "</pre>";
        return "false";
    } else {
        $info = curl_getinfo($ch);
        echo 'La requête a mis ' . $info['total_time'] . ' secondes à être envoyée à ' . $info['url'];
    }
    return $result;
}

?>

Changez l'url à echo request(); avec votre adresse

Enregister votre tache

Là rien d'extraordinaire allez juste dans votre panneau de controle d'OVH > "Hébergement" > "Plus" > "Taches Cron" et creez là.

Entrez le chemin relatif de notre fichier cron-ovh.php, oubliez pas de cocher sur la case "Activer" et voila vous avez votre tache Cron.

Bonus

Vous avez plein de taches cron différentes ? Pas de souci modifier le début du script avec ceci :

$tab = array(
    "https://adresse-de-votre-site.nic/modules/amazon/functions/products.php?cron_token=sf64sef1sefr7sef1sef89se34fse861efs687&context_key=&cron=1&action=update&lang=fr",
    "https://adresse-de-votre-site.nic/modules/amazon/functions/products.php?cron_token=sf64sef1sefr7sef1sef89se34fse861efs687&context_key=&cron=1&action=update&lang=de",
    "https://adresse-de-votre-site.nic/modules/amazon/functions/products.php?cron_token=sf64sef1sefr7sef1sef89se34fse861efs687&context_key=&cron=1&action=update&lang=it",
    "https://adresse-de-votre-site.nic/modules/amazon/functions/products.php?cron_token=sf64sef1sefr7sef1sef89se34fse861efs687&context_key=&cron=1&action=update&lang=uk",
    "https://adresse-de-votre-site.nic/modules/amazon/functions/products.php?cron_token=sf64sef1sefr7sef1sef89se34fse861efs687&context_key=&cron=1&action=update&lang=es",
    "https://adresse-de-votre-site.nic/modules/amazon/functions/import.php?cron_token=sf64sef1sefr7sef1sef89se34fse861efs687&context_key=&cron=1&lang=fr&europe=1",
    "https://adresse-de-votre-site.nic/modules/amazon/functions/import.php?cron_token=sf64sef1sefr7sef1sef89se34fse861efs687&context_key=&cron=1&lang=uk",
    "https://adresse-de-votre-site.nic/modules/amazon/functions/status.php?cron_token=sf64sef1sefr7sef1sef89se34fse861efs687&context_key=&cron=1&lang=fr&europe=1",
    "https://adresse-de-votre-site.nic/modules/amazon/functions/status.php?cron_token=sf64sef1sefr7sef1sef89se34fse861efs687&context_key=&cron=1&lang=uk&europe=1",
    "https://adresse-de-votre-site.nic/modules/amazon/functions/check_stock.php?cron_token=sf64sef1sefr7sef1sef89se34fse861efs687&context_key=&cron=1&lang=fr",
    "https://adresse-de-votre-site.nic/modules/amazon/functions/check_stock.php?cron_token=sf64sef1sefr7sef1sef89se34fse861efs687&context_key=&cron=1&lang=uk",
    "https://adresse-de-votre-site.nic/modules/amazon/functions/check_stock.php?cron_token=sf64sef1sefr7sef1sef89se34fse861efs687&context_key=&cron=1&lang=fr&fix=1",
    "https://adresse-de-votre-site.nic/admin668x0jwri/cron_currency_rates.php?secure_key=sf64sef1sefr7sef1sef89se34fse861efs687",
    "https://adresse-de-votre-site.nic/modules/amazon/functions/check_stock.php?cron_token=sf64sef1sefr7sef1sef89se34fse861efs687&context_key=&cron=1&lang=uk&fix=1");

foreach ($tab as $url) {
    echo request($url);
}

Ceci est un exemple factice pour le module Amazon de Prestashop

 

 

Avatar de l'utilisateur Nodoka

Nodoka

PedoQueen des intrawebz 2.0, antéchristine de la connerie, j'aime les loli, les vocaloid, l’humour noir (car le blanc est raciste) et les Animés. Promis je te mangerais trollement bien avec amour. Ma devise : "If her age is on the clock, she's old enough for the cock".

Articles Aléatoires

Passage sous PHP7

Passage sous PHP7

Migrer un serveur Debian de PHP5 à PHP7 facilement en 30min Voir +
Sélection d'anime du printemps 2016

Sélection d'anime du printemps 2016

Petite sélection personnelle et non exhaustive des animes du printemps 2016 Voir +
Proteger un courriel facilement de méchant robots qui spam

Proteger un courriel facilement de méchant robots qui spam

Exemples de script et techniques de protection de courriel facile à utliser pour se proteger... Voir +

Dernieres Quotes DTC

Skeletto : Je viens de me rendre compte que le langage qu'utilisent les gens qui font du droit ressemble étrangement à de l'art abstrait. C'est probablement joli, mais tu comprends rien.

#19525 - Voir les commentaires

<Maks> Mon coeur...?

<Polly> Oui ?

<Maks> Hier tu m'as parlé de mon cadeau de Noël, tu l'aurais pas commandé sur Amazon par hasard ?

<Polly> Oui, pourquoi ?

<Maks> Tu as commandé avec mon compte, c'est ça ?

<Polly> Tu as reçu un mail...

<Maks> Oui pour l'achat d'un Monopoly Game Of Thrones

<Polly> Et merde...

<Polly> J'ai hésité en plus

#19522 - Voir les commentaires

Elle : Ah dsl

Moi : Fibre aussi...

Elle : ?

Moi : Laisse tomber...

#19526 - Voir les commentaires

<Chouqui> Moi j'étais allé voir Saw 6 à Strasbourg.

<Chouqui> Juste pour le principe.

#19527 - Voir les commentaires