みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

cronで外部ファイルへアクセス

はじめまして。分からない事あり、質問させて頂こうと、アカウントを取得いたしました。

cronが使える共有レンタルサーバー内に、ある簡単なメールが送信されるファイルを置きました。cronテストのために設置したファイルで、アクセスされるとメールが送信されるだけのものです。(ブラウザ経由でアクセスしてもメールが送信されます)

そこで、以下のようなファイルを作成し、cronにて日時設定を行うと、正常にメールが配信されるまで確認いたしました。(mail.phpとは上記メール配信ファイルです)

#!/bin/sh
#PHP
/usr/local/bin/php /~~~~~~/cron_test/mail.php
exit


他方、あるレンタルサーバーを借りているのですが、そこではcronが使えません。

そこで、アクセスされたらPHPが働くファイル(access.phpとします)を置き、cronが使える上記サーバーで定期的にそのaccess.phpにアクセスしたらどうか?と考えに至りました。


要は、cronが使えない以下のサイト(ファイル)にcronを使ってアクセスしたいといった感じです。
http://○○○.com/access.php


ここで質問なのですが、上記のような一連のcronの中で、mail.phpにあたるスクリプトはどのようなものになるのでしょうか?

echo"<img src=\"http://○○○.com/access.php\">";

と記述しているのですが、失敗に終わってしまいます。


前置きが幾分長くなってしまいましたが、この外部ファイルをアクセスするためのソースが分からず困っている次第です。
お忙しい中恐縮ですが、アドバイスのほど宜しくお願い致します。

投稿日時 - 2012-02-03 00:16:11

QNo.7282150

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

file_get_contentsでエラーなら、
pearの「HTTP_Request」はどうですか?

<?php
require_once "HTTP/Request.php";

$obj = new HTTP_Request("http://○○○.com/access.php");
if (!PEAR::isError($obj->sendRequest())){
$body = $obj->getResponseBody();
}
?>

投稿日時 - 2012-02-17 16:14:54

ANo.2

wgetのspiderモードなどで処理すればいいような

投稿日時 - 2012-02-03 10:32:52

お礼

yambejpさま

ご親切なアドバイスをありがとうございます。
また、お返事が遅れてしまった事をお詫び致します。

wgetのspiderモード・・・調べさせて頂きました。
お恥ずかしながら、コマンドで操作することが無く、今すぐに理解出来そうにありません。

とは言え貴重なアドバイスに感謝しておりますので、改め(色々なところで活用できそうなので)理解を深めようと思いますが、質問させてもらったような内容では上手く行くスクリプトとご存知でしょうか?
ご教示頂けると幸いです。

投稿日時 - 2012-02-04 10:00:43

ANo.1

こんにちは。

動作確認はしていませんが、以下のような感じで動きませんか。

cronでキックするAサーバのPHP

<?php
file_get_contnts ( 'http://Bサーバ/access.php' );
?>

これでBサーバのaccess.phpの処理が走ると思います。

投稿日時 - 2012-02-03 09:20:45

お礼

LancerVIIさま

早々のご親切なアドバイスをありがとうございます。
また、お返事が遅れてしまいましたことをお詫び致します。

アドバイス頂いてから幾度かに渡り、このソースを試しているのですが、file_get_contnts ( 'http://Bサーバ/access.php' );のところでエラーが出てしまっているようです。
cronを設定するもすぐに反映されずに動作確認が遅れてしまうのですが、どれも失敗に終わってしまいました。

投稿日時 - 2012-02-04 09:53:41

あなたにオススメの質問