i bir bağlantı tıklama bir otomatik oturum açma ihtiyacı olan bir müşteri için bir proje üzerinde çalışıyorum.
Aşağıdaki kod ile bunu yapmak için bir el sıkışma sayfasını kullanarak ediyorum:
$username="admin";
$password="blog";
$url="http://wordpressblogURL/";
$cookie="cookie.txt";
$postdata = "log=". $username ."&pwd=". $password ."&wp-submit=Log%20In&redirect_to=". $url ."blog/wordpress/wp-admin/&testcookie=1";
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url . "blog/wordpress/wp-login.php");
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6");
curl_setopt ($ch, CURLOPT_TIMEOUT, 60);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt ($ch, CURLOPT_COOKIEJAR, $cookie);
curl_setopt ($ch, CURLOPT_REFERER, $url . "blog/wordpress/wp-login.php");
curl_setopt ($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt ($ch, CURLOPT_POST, 1);
$result = curl_exec ($ch);
curl_close($ch);
echo $result;
exit;
Bu çalışıyor. Bu büyük Beni kaydeder.
Sorun URL kapalı Wordpress anahtarlarını inanmamız.
Ayrıntılı için, (beni günlükleri) benim el sıkışma sayfa "blog" dizininde ve benim wordpress uygulama "blog" dizini içindeki oturur "wordpress" dizinde olduğunu. Tarayıcıda URL blog / handshake.php Ancak, tarayıcı penceresinde Wordpress Yönetici bölümü vardır .. diyor. O .. blog / wordpress / wp-admin dizini olması gerektiğinde URL .. / blog dizini olduğundan Wordpress Admin bağlantılar artık düzgün çalışmıyor.
Tarayıcıda URL gerçek sayfa yansıtır böylece bunu yapmak için CURL bir yolu var mı?
Ben bunun yerine fsockopen kullanıyor olmalıdır?