首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在PHP中使用CURL或fsockopen的Wordpress自动登录

在 PHP 中,使用 cURL 或 fsockopen 实现 WordPress 自动登录的方法如下:

  1. 使用 cURL 实现自动登录
代码语言:php
复制
<?php
$username = 'your_username';
$password = 'your_password';
$login_url = 'http://your-wordpress-site.com/wp-login.php';
$login_data = array(
    'log' => $username,
    'pwd' => $password,
    'wp-submit' => 'Log In',
    'redirect_to' => 'http://your-wordpress-site.com/wp-admin/',
    'testcookie' => '1'
);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $login_url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($login_data));
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$result = curl_exec($ch);
curl_close($ch);

echo $result;
?>
  1. 使用 fsockopen 实现自动登录
代码语言:php
复制
<?php
$username = 'your_username';
$password = 'your_password';
$login_url = 'http://your-wordpress-site.com/wp-login.php';
$login_data = array(
    'log' => $username,
    'pwd' => $password,
    'wp-submit' => 'Log In',
    'redirect_to' => 'http://your-wordpress-site.com/wp-admin/',
    'testcookie' => '1'
);

$post_data = http_build_query($login_data);
$length = strlen($post_data);

$fp = fsockopen('your-wordpress-site.com', 80, $errno, $errstr, 30);
if (!$fp) {
    echo "Error: $errstr ($errno)";
} else {
    $out = "POST /wp-login.php HTTP/1.1\r\n";
    $out .= "Host: your-wordpress-site.com\r\n";
    $out .= "Content-Type: application/x-www-form-urlencoded\r\n";
    $out .= "Content-Length: " . $length . "\r\n";
    $out .= "Connection: Close\r\n\r\n";
    $out .= $post_data;

    fwrite($fp, $out);
    while (!feof($fp)) {
        $result .= fgets($fp, 128);
    }
    fclose($fp);

    echo $result;
}
?>

这两种方法都可以实现在 PHP 中使用 cURL 或 fsockopen 进行 WordPress 自动登录。其中,cURL 是更为推荐的方法,因为它更加灵活,功能更强大。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券