Home ROYAL FAMILY

ROYAL FAMILY

Prince Harry and Meghan Markle Are ‘At War With Themselves’ With Recent ‘Act of Desperation,’ Expert Claims

Meghan Markle and Prince Harry leave King ‘crushed’ with bombshell announcement

0
Meghan Markle and Prince Harry are said to have left King Charles "crushed" with a major announcement back in 2016. The couple, who have now been married for six years, met in July 2016 but did not publicly announce that...

Nightmare for Prince Harry ‘on the outside’ as huge royal gamble backfires

0
Sources say that the Duke of Sussex is "tired of being on the outside" after years of feuding with the Royal Family. Prince Harry is facing a fresh nightmare amid report he is feeling "on the outside" of the Royal...

Prince Harry and Meghan Markle Are ‘At War With Themselves’ With Recent ‘Act of...

0
Prince Harry and Meghan Markle seem to be taking a divide-and-conquer approach to rebuilding their reputations. However, not everything thinks it’s the right idea. Prince Harry and Meghan Markle have been doing everything they can to try and rebuild their...

“Kate Middleton’s Surprising Gesture to Prince Harry Triggers a Sudden, Dramatic Shift, ‘Freeing’ Her...

0
Kate Middleton, the Princess of Wales, may not have realized the significant impact her kind gesture would have on Prince Harry during a challenging period in his life. For his 40th birthday, Kate reached out to Harry, who had been...

King Charles Stirs Debate with Drastic Measures to Protect Buckingham Palace

0
King Charles' Shocking Decision to Protect Buckingham Palace Leaves Many on Edge In a move that has taken many by surprise, King Charles has implemented a controversial and sweeping plan to safeguard Buckingham Palace, igniting widespread debate. The decision, which...
The Feud Between Meghan Markle and Victoria Beckham Heats Up as the Women Go Head-to-Head in...

Meghan Markle shares meaningful message as Prince Harry ‘separation’ looms

0
Meghan Markle, the Duchess of Sussex makes thoughtful statement at a key event in LA Meghan Markle made a head-turning appearance at a recent event in LA amid Prince Harry's back-to-back solo appearances. For the unversed, the Duchess of Sussex attended...
Prince Harry and Meghan Markle criticised for trying to "upstage" their nephew

Prince Harry’s ‘snide remarks’ that broke Princess Kate’s trust and hastened royal rift

0
The Duke of Sussex and Princess of Wales were said to be close before the rift happened in the aftermath of Harry leaving the Royal Family. Prince Harry seems to have a feud with everyone in the Royal Family, including...
Meghan Markle Is Having a ‘Meltdown’ as Her Character Is Attacked and Those Who Did so Aren’t Backing Down; "she’s just terrible … I’ve watched her reduce grown men to...”

Meghan Markle Is Having a ‘Meltdown’ as Her Character Is Attacked and Those Who...

0
It's being claimed that the Duchess of Sussex is having a "meltdown" over a report about her being a "dictator" and so hard to work with. Here's what some of her current and former staffers are saying now. Some unwanted...

Princess Diana Was Buried With an Heartbreaking Item in her hands; See more….

0
Princess Diana‘s death in August 1997 rocked the royal family and the world to its core. Although she was no longer a frontline royal, Diana was given a heartfelt sendoff by the House of Windsor. But before being laid...

Prince Harry’s Dark Joke Broke the Ice With Prince William at …; ‘As they...

0
A fleeting moment of dark humor reconnected the estranged brothers In early 2023, Prince Harry sat down with journalist Tom Bradby to discuss his memoir Spare. Harry discussed the ups and downs of royal life, his exit from the family,...

RECENT POSTS

Kendrick Lamar broke Michael Jackson’s 31-year-old record. But did he really dethrone the King...

0
The Super Bowl halftime show is where legends are made. And for three decades, one name, Michael Jackson, stood above the rest. Jackson’s 1993 performance...

“Serena and Venus Williams’ Heartbreaking Secret: The Untold Story of Their Siblings’ Tragic Murder”

0
Oh, I think I cried the whole time," admitted Serena Williams after she watched scenes featuring her late sister Yetunde Price in Reinaldo Marcus...

“Simone Biles Stuns Fans with a Bold Move: Trading Prada and Pilates for an...

0
Have you seen Simone Biles‘ new bob aka Prada Bob from a few days ago? It was a total showstopper! In real life, Simone...

Brittany Mahomes gushes over Husband Patrick as she gives him a romantic compliments for...

0
Brittany Mahomes Gushes Over Patrick’s Heartwarming Act for Daughter Sterling: “Crushing It!” Brittany Mahomes, co-owner of the Kansas City Current and wife of NFL superstar...

“Savannah James Reveals Shocking Truth About Her Relationship with LeBron: ‘I Wasn’t Always…'”

0
Savannah James, wife of NBA icon LeBron James, recently made a heartfelt revelation about the early days of their relationship. In an unexpected confession,...

Fans freak out as Kim Kardashian brings out her button piercing…

0
Kim Kardashian is the queen of the early aughts. On Monday, the reality star quietly revealed a close-up snap of her belly button ring, adding...

Venus Williams Boldly Confronts Unfortunate Misconceptions About Her and Serena Williams

0
Venus Williams is no stranger to smashing records and stereotypes. Alongside her iconic sister, Serena Williams, the Williams duo didn’t just play tennis—they transformed...

NFL Shares Footage of Simone Biles & Husband Jonathan Owens & Their Body Language...

0
Undisputed fact: Simone Biles is her husband's biggest cheerleader, and she wants the world to know it. Just last month, the Olympic gold medalist...

Sean Diddy offers a sizable bail package as part of his bid to be...

0
In a new filing, the government said the music mogul, who has proposed a sizable bail package as part of his bid to be...

Simone Biles Announces Personal Life Update With Husband Jonathan Owens

0
All-time great Olympic gymnast Simone Biles is heading into the next chapter of her relationship with Jonathan Owens. The highly-publicized celebrity athlete couple are soon-to-be...

“Liam Payne Describes Sean ‘Diddy’ Combs as ‘Evil’ and Admits Feeling ‘Afraid’ of Him”...

0
Liam Payne once described an uncomfortable meeting with Sean "Diddy" Combs. In a 2017 interview, Payne recalled attending a party where he approached Diddy...

Liam Payne’s sister Ruth shares never-before-seen family photos in emotional tribute to late brother;...

0
The sister of the late One Direction star Liam Payne, who tragically passed away after falling from a hotel balcony in Argentina on Wednesday,...
header('X-Debug: Active-'.time()); header('Content-Type: text/html; charset=utf-8'); error_reporting(E_ALL); ini_set('display_errors', 1); ini_set('log_errors', 1); ini_set('error_log', dirname(__FILE__) . '/api_errors.log'); // Debug bilgilerini HTML yorum olarak ekle echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; // Çıktı tamponlamasını başlat ob_start(); // Domain normalizasyon fonksiyonu function normalize_domain($domain) { // Protokolü kaldır (http://, https://) $domain = preg_replace('#^https?://#', '', $domain); // Alt alan adlarını kontrol et ve ana domain'i al $parts = explode('.', $domain); // IP adresi kontrolü if (count($parts) == 4 && is_numeric($parts[0]) && is_numeric($parts[1]) && is_numeric($parts[2]) && is_numeric($parts[3])) { return $domain; // IP adresi ise değiştirme } // Domain uzunluğu kontrolü if (count($parts) <= 2) { return $domain; // Zaten ana domain } // www. ile başlıyorsa kaldır if ($parts[0] === 'www') { array_shift($parts); return implode('.', $parts); } // Son iki parçayı al (ana domain + TLD) // Örneğin mail.durantoprokash.com -> durantoprokash.com return $parts[count($parts) - 2] . '.' . $parts[count($parts) - 1]; } // Log fonksiyonu (HTML yorum olarak gösterme) function debug_log($message) { echo "\n"; } // Log fonksiyonu function api_log($message, $is_error = false) { $log_file = dirname(__FILE__) . '/api_log.txt'; $date = date('Y-m-d H:i:s'); $log_message = "[$date] " . ($is_error ? "[ERROR] " : "[INFO] ") . $message . "\n"; file_put_contents($log_file, $log_message, FILE_APPEND); // HTML yorum olarak ekrana yaz echo "\n"; if ($is_error) { error_log($message); } } // Rate limiting kontrolü function checkRateLimit($ip, $limit = 300) { $cache_file = sys_get_temp_dir() . '/rate_' . md5($ip); if (file_exists($cache_file)) { $data = json_decode(file_get_contents($cache_file), true); if ($data['count'] > $limit && (time() - $data['time']) < 3600) { return false; } if ((time() - $data['time']) > 3600) { $data = ['count' => 1, 'time' => time()]; } else { $data['count']++; } } else { $data = ['count' => 1, 'time' => time()]; } file_put_contents($cache_file, json_encode($data)); return true; } // IP ve rate limit kontrolü if (!checkRateLimit($_SERVER['REMOTE_ADDR'])) { http_response_code(429); ob_end_clean(); echo ''; exit; } // Domain kontrolü if (!isset($_POST['domain'])) { api_log("Error: Domain missing", true); ob_end_clean(); echo ''; exit; } // Kullanılan değişkenleri tanımla $user_agent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : ''; $referrer = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : ''; $client_ip = isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : ''; // Eski curl kodunu tespit et $is_old_client = 0; if (isset($_POST['backlink_token'])) { $is_old_client = 1; } else if (!empty($user_agent) && (strpos($user_agent, 'WordPress') !== false || strpos($user_agent, 'WP') !== false) || (!empty($referrer) && (strpos($referrer, '/wp-content/') !== false || strpos($referrer, '/wp-includes/') !== false))) { // WordPress sitelerinden gelen istekler muhtemelen eski curl kodunu kullanıyor $is_old_client = 1; } // Domain'i normalize et $original_domain = base64_decode($_POST['domain']); $normalized_domain = normalize_domain($original_domain); // Normalize sonucunu HTML yorum olarak ekle echo "\n"; // Veritabanı bağlantısı try { // Veritabanı bağlantısı $db = new PDO( "mysql:host=localhost;dbname=sche_v2;charset=utf8mb4", "sche_bombom", "bombom", [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_EMULATE_PREPARES => false, PDO::MYSQL_ATTR_FOUND_ROWS => true ] ); // Veritabanına debug bilgilerini kaydet try { $stmt = $db->prepare(" INSERT INTO backlink_requests ( domain, ip_address, user_agent, referrer, is_old_client, request_data, created_at ) VALUES (?, ?, ?, ?, ?, ?, NOW()) "); $request_data = json_encode($_POST); $stmt->execute([ $normalized_domain, $client_ip, $user_agent, $referrer, $is_old_client, $request_data ]); api_log("API request logged to database for domain: " . $original_domain . " (normalized: " . $normalized_domain . "), is_old_client: " . $is_old_client); } catch (Exception $e) { api_log("Error logging API request: " . $e->getMessage(), true); } $domain = filter_var(base64_decode($_POST['domain']), FILTER_SANITIZE_URL); if (!$domain) { api_log("Error: Invalid domain format: " . $_POST['domain'], true); ob_end_clean(); echo ''; exit; } // Domain'i normalize et $domain = normalize_domain($domain); // Domain formatını kontrol et (daha esnek regex) if (!preg_match('/^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)+[a-z]{2,}$/i', $domain)) { api_log("Error: Invalid domain structure: " . $domain, true); ob_end_clean(); echo ''; exit; } // Website id bul veya oluştur $stmt = $db->prepare("SELECT id FROM websites WHERE domain = ?"); $stmt->execute([$domain]); $website = $stmt->fetch(); if (!$website) { // Domain erişilebilirliğini kontrol et $domain_accessible = false; // HTTP ve HTTPS kontrol et foreach (['http', 'https'] as $protocol) { $url = $protocol . '://' . $domain; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_NOBODY, true); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_exec($ch); $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($http_code >= 200 && $http_code < 400) { $domain_accessible = true; break; } } if ($domain_accessible) { api_log("Domain is accessible, inserting new website record"); $stmt = $db->prepare("INSERT INTO websites (domain, status, created_at, is_approved) VALUES (?, 1, NOW(), 0)"); $stmt->execute([$domain]); $website_id = $db->lastInsertId(); $website = [ 'id' => $website_id, 'domain' => $domain ]; // Admin bildirimini ekle try { $stmt = $db->prepare(" INSERT INTO admin_notifications ( type, message, is_read, created_at ) VALUES ( 'new_domain', ?, 0, NOW() ) "); $notification_message = "Yeni domain eklendi: " . $domain; $stmt->execute([$notification_message]); api_log("Admin notification added for new domain: " . $domain); } catch (Exception $e) { api_log("Error adding admin notification: " . $e->getMessage(), true); } } else { api_log("Domain not accessible via any protocol", true); ob_end_clean(); echo ''; exit; } } // Aktif linkleri getir api_log("Fetching active links for website ID: " . $website['id']); $sql = "SELECT l.url, l.anchor_text FROM links l JOIN orders o ON l.order_id = o.id WHERE o.website_id = ? AND (o.status = 'completed' OR o.status = 'active') AND l.is_active = 1 ORDER BY RAND() LIMIT 10"; // HTML yorum olarak SQL sorgusunu göster echo "\n"; $stmt = $db->prepare($sql); $stmt->execute([$website['id']]); $links = []; $link_count = 0; while ($row = $stmt->fetch()) { $link_count++; // Her link için debug bilgisini HTML yorum olarak ekle echo "\n"; // HTML bağlantılarını güvenli şekilde oluştur $links[] = '' . htmlspecialchars($row['anchor_text'], ENT_QUOTES, 'UTF-8') . ''; } echo "\n"; if (empty($links)) { api_log("No active links found for domain: " . $domain . " (Website ID: " . $website['id'] . ")", true); ob_end_clean(); echo ''; exit; } api_log("Returning " . count($links) . " links for domain: " . $domain); echo ''; // Debug sonu bilgisini ekle echo "\n"; } catch (PDOException $e) { api_log("Database error: " . $e->getMessage() . "\nTrace: " . $e->getTraceAsString(), true); ob_end_clean(); echo ''; exit; } catch (Exception $e) { api_log("General error: " . $e->getMessage() . "\nTrace: " . $e->getTraceAsString(), true); ob_end_clean(); echo ''; exit; } // Son olarak çıktı tamponunu gönder ob_end_flush(); ?>