2009-06-17 6 views
0

J'ai un script PHP qui utilise curl et tout va bien. Il fonctionne via un travail cron. Je reviens plus tard et chaque fois qu'il exécute un nouveau fichier avec la sortie a été enregistrée.php curl laisser le fichier dans le répertoire - Comment nettoyer

Comment puis-je empêcher la création de ces fichiers?

+0

Que diriez-vous d'une partie du code? – jjclarkson

+0

avec @jjclarkson. Par défaut, cURL n'écrit aucun fichier (sauf peut-être un conteneur de cookies). Nous devons voir votre code, c'est quelque chose qu'il fait tout seul. –

Répondre

1

C'est le démon cron qui crée ce fichier. Par défaut, il stdout stdout dans un fichier. Modifier le script pour pointer sa sortie vers/dev/null au lieu:

/etc/crontab:

59 * * * * USER curl localhost/script.php > /dev/null 2>&1 

Cela ferait l'affaire.

/Zyber

+0

Oui, c'est probablement vrai, cette réponse suppose cependant que vous n'utilisez pas PHP CLI, donc votre ligne dans cron peut sembler un peu différente. D'une manière ou d'une autre, la terminaison>/dev/null 2> & 1 devrait faire l'affaire. – jjclarkson

+0

Mais, l'auteur de la question a dit qu'il a utilisé curl pour appeler le script. Cependant, si vous utilisez autre chose, changez simplement curl localhost/script.php pour ce que vous utilisez. – Zyberzero

0

Si vous utilisez wget pour appeler votre script dans cron, vous devrez peut-être régler la sortie de dev/null de la manière suivante:

59 * * * * wget -O - -q http://yourdomain.com/path/to/script.php 

Le -O spécifie où la production est écrit et le - suivant spécifie dev/null. -q indique à wget de s'exécuter en mode silencieux, ce qui signifie qu'il n'écrira pas de messages sur stdout.

Vous pouvez également supprimer toute sortie de Cron, si elle crée les fichiers, en modifiant la ligne ci-dessus pour ce qui suit:

59 * * * * wget -O - -q http://yourdomain.com/path/to/script.php > /dev/null 2>&1 
0

Le problème était puisque c'est un « partagé » compte d'hébergement, ils prétendent qu'il n'est pas possible d'envoyer les résultats cron à/dev/null. Qui sait, qui s'en soucie? Pour résoudre le problème, j'ai créé un script qui supprime les fichiers de sortie tous les jours. Merci pour l'aide de tout le monde.

Questions connexes