私は1つのウェブサイトでそのログインをカールしようとしていますが、問題は私がエラー500 - 内部サーバーエラーが発生し続けていることです。エラー500、PHP curlで
コード:
<?php
$path = $_SERVER["DOCUMENT_ROOT"]."/teste/ctemp";
//login form action url
$url="https://example/security_check";
$postinfo = "username=xxx&password=xxxx";
$website="https://example/account";
$base="https://example/";
$cookie_file_path = $path."/cookie.txt";
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_NOBODY, false);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file_path);
//set the cookie the site has for certain features, this is optional
curl_setopt($ch, CURLOPT_COOKIE, "cookiename=0");
curl_setopt($ch, CURLOPT_USERAGENT,
"Mozilla/5.0 (Windows; U; Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_REFERER, $_SERVER['REQUEST_URI']);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postinfo);
curl_exec($ch);
//page with the content I want to grab
curl_setopt($ch, CURLOPT_URL, $website);
//do stuff with the info with DomDocument() etc
$html = curl_exec($ch);
curl_close($ch);
$html = preg_replace("/<head>/i", "<head><base href='$base' />", $html, 1);
echo $html;
のウェブサイトはhttps://example/で、認証フォームは成功でログイン後、ページは一例/アカウント
にリダイレクトされ、ポストのユーザー名とパスワードを使用してhttps://example/security_checkにsubmitedれる何か問題はあります私のコードで?
それぞれの行に 'var_dump( 'try 1').... var_dump( 'try n')'を設定すると、どこが壊れているのかがわかります。より速い練習です。私はあなたを助けて欲しい。 –
コードは、私が試した別のウェブサイトでは本当にうまくいっていますが、問題はカールしようとしているこの1つだけです。私はいくつかの調査を行い、ログインページに保存されているクッキーのためです。郵便で直接書式を書いてください、これのためのヒント? –
私に完全なコードを送ったり、私にリンクを送るべきなら、それをテストする必要があります。 –