witam, mam mały problem, mam skrypt ktory bezposrednio uruchamiał mi dana stronę i odswiezal ja, skrypt wrzucilem na moj serwer i ustawilem proces crona:
function curl_login($url,$data,$proxy,$proxystatus){
$fp = fopen("cookie.txt", "w"); $login = curl_init();
curl_setopt($login, CURLOPT_COOKIEJAR, "cookie.txt");
curl_setopt($login, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($login, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($login, CURLOPT_TIMEOUT, 40);
curl_setopt($login, CURLOPT_RETURNTRANSFER, TRUE);
if ($proxystatus == 'on') {
curl_setopt($login, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($login, CURLOPT_HTTPPROXYTUNNEL, TRUE);
curl_setopt($login, CURLOPT_PROXY, $proxy);
}
curl_setopt($login, CURLOPT_URL, $url);
curl_setopt($login, CURLOPT_HEADER, TRUE);
curl_setopt($login, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt($login, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($login, CURLOPT_POST, TRUE);
curl_setopt($login, CURLOPT_POSTFIELDS, $data);
return curl_exec ($login); // execute the curl command
curl_close ($login);
}
function curl_grab_page($site,$proxy,$proxystatus){
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
if ($proxystatus == 'on') {
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
}
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($ch, CURLOPT_URL, $site);
return curl_exec ($ch); // execute the curl command
curl_close ($ch);
}
wszystko działało do czasu az administrator zmienil sposob logowania, a zmienil zeby zabezpieczyc sie przed Session fixation:
if(!isset($_SESSION['session_safe'])) {
$_SESSION['session_safe'] = 1;
}
if(isset($_SESSION['browser']) && isset($_SESSION['ip']) && ($_SESSION['browser'] != $_SERVER['HTTP_USER_AGENT'] ||
$_SESSION['ip'] != $_SERVER['REMOTE_ADDR']))
{
echo 'Błąd autoryzacji!'; }
else
{
$_SESSION['browser'] = $_SERVER['HTTP_USER_AGENT'];
$_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
no i teraz wyskakuje mi ten błąd autoryzacji, gdy loguje sie przez skrypt logowania, kombinowalem troche, np. zmienilem user agenta na takiego jaki ma moja przegladarka internetowa i gdy uruchamiam z niej mój skrypt wszystko dziala
dodam jeszcze ze przed zmiana sposobu logowania poprzez skrypt wysyłałem metoda post
curl_login('adres strony','email=aaa%40o2.pl&pass=aaa&CookieDate=1','','off');
natomiast teraz mam
curl_login('adres strony','email=aaa%40o2.pl&__Identyfikator_sesji=7fa79fed8173ef229d2aee930f5796e5&pass=aaa','','off');
co zmienic zeby poprzez cron ustawic proces logowania sie na dana strone teraz
z góry dziekuje za pomoc
bump
bump2
bump3