2010-09-22 21 views
2

Juste au moment où je pensais comprendre les tâches cron, je réalise que je ne comprends toujours pas. J'essaie de mettre en place un travail cron via Dreamhost pour envoyer une requête ping à une URL une fois par heure. Cette URL, lorsqu'elle est visitée, effectue une petite requête (ish) et met à jour la base de données.Configuration du travail Dreamhost Cron pour simplement exécuter l'URL

Quelques exemples que j'ai essayé qui ne semblent pas avoir à de travaillé:

wget -O /dev/null http://www.domain.com/index.php?ACT=25&profile_id=1 

et

wget -q http://www.domain.com/index.php?ACT=25&profile_id=1 

Le domaine correct a été inséré dans l'URL de cours.

Alors, qu'est-ce qui me manque? Comment pourrais-je exécuter une URL via un Cronjob?

Répondre

3

Une chose, vous fuyez votre URL?

Essayez avec:

wget -O/dev/null "http://www.domain.com/index.php?ACT=25 & profile_id = 1"

Avoir une esperluette dans le L'URL conduit généralement à un comportement étrange (traitement en arrière-plan et en ignorant le reste de l'URL, etc).

1

J'ai juste eu le même problème, et j'ai trouvé qu'en fait deux solutions fonctionnent. L'un est comme Victor Pimentel suggéré: enfermer l'URL avec " et la deuxième option est d'échapper au caractère & dans le cronjob comme ceci: \&, donc dans votre cas la déclaration ressemblerait à ceci:

wget -q http://www.domain.com/index.php?ACT=25\&profile_id=1 

ou

wget -q "http://www.domain.com/index.php?ACT=25&profile_id=1" 
-1

liens -Benne http://Txx-S.com/php/test1.php

avons beaucoup travaillé mieux que wget. Il fait écho aux sorties du script php dans l'e-mail sans tous les indésirables que wget fournit. Il a fallu un moment pour arriver ici, mais c'est dans la documentation de Dreamhost. Ne pas besoin de tous les trucs maison/utilisateur et le mal de tête de placer tous les php sous différents utilisateurs ... IMHO. Pete