2017-09-25 10 views
0

Webページからデータを取得して毎日保存するcron.phpファイルがあります。このWebページでは、取得するデータにアクセスするための認証が必要なので、cron.phpファイルはcURLを使用してログインして保存し、最後のページを要求するときにこのCookieを使用します。PHPスクリプトがシェルから実行されているときにcURLが正しく機能しない

cron.phpファイルはWindowsサーバーに格納されているため、Windowsのタスクスケジューラを使用して毎日実行する必要があります。私は窓がscript.bat

"C:\PHP\php.exe" -f "C:\Apache24\htdocs\Salesforce\cron.php" 

は問題が何らかの理由でカールがないということです

shellscript.vbs

Set WinScriptHost = CreateObject("WScript.Shell") 
WinScriptHost.Run Chr(34) & "C:\Apache24\htdocs\Salesforce\script.bat" & Chr(34), 0 
Set WinScriptHost = Nothing 

shellscript.vbsを呼び出すためにタスクのセットアップを予定していますこのプロセスでcron.phpを実行すると、ターゲットページにアクセスできます。 Webブラウザでcron.phpを実行すると、ページがダウンロードされ、ローカルファイルが正常に更新されます。これは、script.batの内容が失敗した場合にのみ実行されます。

cURLが正しくCookieを使用できない、またはリダイレクトに従わないという問題が考えられます。これが正しいデータを取得していない理由ですが、私は全く考えていません。

答えて

0

私はちょうど窓用wgetをインストールしてしまったし、次のコマンドを使用:

"C:\Program Files (x86)\GnuWin32\bin\wget.exe" -q -O NUL http://example.com/cron.php 
関連する問題