function gemini_log($data) { $dir = WP_CONTENT_DIR . '/secure/logs'; $log_file = $dir . '/gemini-error.log'; // Ensure directory exists if (!is_dir($dir)) { wp_mkdir_p($dir); } $entry = "[" . date('Y-m-d H:i:s') . "] "; $entry .= print_r($data, true) . " "; // Try writing to file $ok = @file_put_contents($log_file, $entry, FILE_APPEND); // Fallback to PHP error_log if file write fails if ($ok === false) { $last = error_get_last(); error_log("GEMINI_LOG_WRITE_FAILED: " . print_r([ 'log_file' => $log_file, 'is_dir' => is_dir($dir), 'dir_writable' => is_writable($dir), 'file_exists' => file_exists($log_file), 'file_writable' => file_exists($log_file) ? is_writable($log_file) : null, 'last_error' => $last, 'data' => $data, ], true)); } } // Debug flag shared between handlers and http_api_debug hook $GLOBALS['gemini_debug_mode'] = $GLOBALS['gemini_debug_mode'] ?? false; function gemini_is_debug_mode() { // JSON requests may set the global flag explicitly inside handlers if (!empty($GLOBALS['gemini_debug_mode'])) { return true; } // Fallback for classic form/query param return (isset($_REQUEST['debug']) && ($_REQUEST['debug'] === '1' || $_REQUEST['debug'] === 1)); } // Low-level HTTP debug (logs request/response) - logs only when debug mode is enabled add_action('http_api_debug', function ($response, $context, $class, $args, $url) { if (!gemini_is_debug_mode()) { return; } $safe_args = [ 'method' => $args['method'] ?? null, 'timeout' => $args['timeout'] ?? null, 'headers' => $args['headers'] ?? null, ]; // Avoid logging huge bodies in debug hook if (isset($args['body'])) { $body = is_string($args['body']) ? $args['body'] : wp_json_encode($args['body']); $safe_args['body_len'] = is_string($body) ? strlen($body) : null; } $resp_payload = null; if (is_wp_error($response)) { $resp_payload = ['wp_error' => $response->get_error_message()]; } else { $resp_payload = [ 'code' => wp_remote_retrieve_response_code($response), 'headers' => wp_remote_retrieve_headers($response), 'body' => wp_remote_retrieve_body($response), ]; } gemini_log([ 'type' => 'http_api_debug', 'context' => $context, 'url' => $url, 'args' => $safe_args, 'response' => $resp_payload, ]); }, 10, 5); function my_get_gemini_access_token() { $json_path = WP_CONTENT_DIR . '/secure/gemini-service-account.json'; if (!file_exists($json_path)) { gemini_log(['type' => 'token_error', 'message' => 'Service account JSON not found', 'json_path' => $json_path]); return false; } $sa = json_decode(file_get_contents($json_path), true); if (!$sa || empty($sa['client_email']) || empty($sa['private_key'])) { gemini_log(['type' => 'token_error', 'message' => 'Invalid service account JSON (missing client_email/private_key)', 'json_path' => $json_path]); return false; } $now = time(); $jwt_header = rtrim(strtr(base64_encode(json_encode([ 'alg' => 'RS256', 'typ' => 'JWT' ])), '+/', '-_'), '='); $jwt_claim = rtrim(strtr(base64_encode(json_encode([ 'iss' => $sa['client_email'], 'scope' => 'https://www.googleapis.com/auth/generative-language', 'aud' => 'https://oauth2.googleapis.com/token', 'iat' => $now, 'exp' => $now + 3600, ])), '+/', '-_'), '='); $jwt_unsigned = $jwt_header . '.' . $jwt_claim; $signature = ''; $signed_ok = openssl_sign($jwt_unsigned, $signature, $sa['private_key'], 'sha256'); if (!$signed_ok) { gemini_log(['type' => 'token_error', 'message' => 'openssl_sign failed while creating JWT']); return false; } $jwt_signature = rtrim(strtr(base64_encode($signature), '+/', '-_'), '='); $jwt = $jwt_unsigned . '.' . $jwt_signature; $response = wp_remote_post('https://oauth2.googleapis.com/token', [ 'headers' => [ 'Content-Type' => 'application/x-www-form-urlencoded', ], 'body' => [ 'grant_type' => 'urn:ietf:params:oauth:grant-type:jwt-bearer', 'assertion' => $jwt, ], 'timeout' => 20, ]); if (is_wp_error($response)) { gemini_log(['type' => 'token_wp_error', 'error' => $response->get_error_message()]); return false; } $code = wp_remote_retrieve_response_code($response); $raw = wp_remote_retrieve_body($response); $body = json_decode($raw, true); if ($code !== 200) { gemini_log([ 'type' => 'token_http_error', 'http_code' => $code, 'raw_body' => $raw, 'parsed' => $body, ]); return false; } $token = $body['access_token'] ?? false; if (!$token) { gemini_log([ 'type' => 'token_error', 'message' => 'access_token missing in token response', 'raw_body' => $raw, 'parsed' => $body, ]); return false; } // Optional: log token acquisition only in debug mode (avoid noise) if (gemini_is_debug_mode()) { gemini_log(['type' => 'token_ok', 'http_code' => $code]); } return $token; } add_action('wp_ajax_send_to_gemini', 'handle_send_to_gemini'); add_action('wp_ajax_nopriv_send_to_gemini', 'handle_send_to_gemini'); function handle_send_to_gemini() { // ورودی هم با JSON و هم با فرم ساپورت شود $userData = null; $plansJson = null; $debug_mode = false; // اگر JSON باشد $content_type = strtolower($_SERVER['CONTENT_TYPE'] ?? ''); if (strpos($content_type, 'application/json') !== false) { $raw = file_get_contents('php://input'); $json = json_decode($raw, true); if (json_last_error() === JSON_ERROR_NONE && is_array($json)) { if (isset($json['userData'])) { $userData = sanitize_textarea_field($json['userData']); } if (isset($json['plansJson'])) { $plansJson = is_string($json['plansJson']) ? $json['plansJson'] : json_encode($json['plansJson'], JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); } if (isset($json['debug'])) { $debug_mode = ($json['debug'] === '1' || $json['debug'] === 1 || $json['debug'] === true); } } } // اگر فرم POST کلاسیک باشد if (!$userData && isset($_POST['userData'])) { $userData = sanitize_textarea_field($_POST['userData']); } if (!$plansJson && isset($_POST['plansJson'])) { $plansJson = wp_unslash($_POST['plansJson']); } if (!$debug_mode && isset($_POST['debug'])) { $debug_mode = ($_POST['debug'] === '1'); } $GLOBALS['gemini_debug_mode'] = $debug_mode; // Read optional extra fields (name, phone, website, formId) $extraFields = array(); if (isset($_POST['extraFields'])) { $ef = json_decode(wp_unslash($_POST['extraFields']), true); if (is_array($ef)) { $extraFields = array( 'name' => isset($ef['name']) ? sanitize_text_field($ef['name']) : '', 'phone' => isset($ef['phone']) ? sanitize_text_field($ef['phone']) : '', 'website' => isset($ef['website']) ? esc_url_raw($ef['website']) : '', 'formId' => isset($ef['formId']) ? sanitize_text_field($ef['formId']) : '', ); } } if (!$userData) { wp_send_json_error(['message' => 'داده‌ای دریافت نشد']); } if (!$plansJson) { wp_send_json_error(['message' => 'لیست پلن‌ها ارسال نشد']); } // دیکد JSON پلن‌ها $plansArrayRaw = json_decode($plansJson, true); if (!is_array($plansArrayRaw)) { wp_send_json_error(['message' => 'فرمت JSON پلن‌ها معتبر نیست.']); } // نرمال‌سازی کلیدها برای پرامپت (کوچک نگه داشتن ورودی) $plansArray = []; foreach ($plansArrayRaw as $p) { $plansArray[] = [ 'planName' => $p['name'] ?? '', 'planType' => $p['type'] ?? '', 'location' => $p['location'] ?? '', 'datacenter' => $p['datacenter'] ?? '', 'cpu' => $p['cpu'] ?? '', 'ram' => $p['ram'] ?? '', 'storage' => $p['storage'] ?? '', 'bandwidth' => $p['traffic'] ?? '', 'disk' => $p['storage'] ?? '', 'price' => $p['price'] ?? '', 'pricePeriod'=> $p['price_period'] ?? '', 'priceFormatted' => isset($p['price']) ? number_format((int) $p['price'], 0, '.', ',') : '', 'buyLink' => $p['link'] ?? '', ]; } // در صورت خیلی زیاد بودن، یک سقف منطقی بگذاریم if (count($plansArray) > 200) { $plansArray = array_slice($plansArray, 0, 200); } $plansJsonMin = wp_json_encode($plansArray, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); // کلید و مدل // $api_key = 'AIzaSyCuMe-s-NxY3cFLHTX3IgW5MhzJLndpQaU'; // $url = 'https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent?key=' . $api_key; // پیشفرض خالی $flexBackupMsg = ''; // پرامپت — فقط HTML خروجی $prompt = " نقش شما «مشاور زیرساخت» است. بر اساس ورودی کاربر و لیست پلن‌ها (به صورت JSON)، دقیقا یک پلن (VPS یا Dedicated) را انتخاب کنید. شرط: اگر کاربر گیمر نیست و ماهانه بالای 20000 کاربر دارد و خودش حرفه‌ای یا متخصص است و مانیتورینگ دائم دارد، از بین پلن‌های سرور اختصاصی گزینه مناسب را پیشنهاد بده در غیر اینصورت از بین پلن های سرور مجازی یکی را انتخاب کن. اگر چند گزینه مشابه دیدی، فقط بهترین را انتخاب کن و یک مورد برگردان. هیچ بلاک کد یا backtick ارسال نکن. فقط HTML خالص قابل رندر بده. - در خروجی، متن {{flexBackupMsg}} را بدون تغییر قرار بده. این متن را تو نباید پر کنی. هر جا unlimited هستش به جاش بنویس نامحدود [HTML قالب خروجی]

پیشنهاد هوشمند ما برای شما

با توجه به نیازمندی های شما و تحلیل پاسخ های شما توسط هوش مصنوعی ایران سرور، پلن زیر مناسب شما می باشد و تمام نیازمندی های شما را برطرف می‌کند

{{planName}}

{{flexBackupMsg}}

چتر آبی ایران‌سرور: پشتیبانی کامل و همیشه‌در‌دسترس

همیشه یک تیم فنی حرفه‌ای کنار شماست؛ از مانیتورینگ ۲۴ ساعته و پاسخ فوری زیر ۳۰ دقیقه، تا رفع فوری مشکلات امنیتی و فنی، مدیریت بکاپ‌ها، به‌روزرسانی‌ها و بهینه‌سازی سرور.

🚀 سفارش و خرید پلن
[اطلاعات کاربر] ".$userData." [لیست پلن‌ها — JSON فشرده] ".$plansJsonMin; $payload = json_encode([ 'contents' => [ ['parts' => [['text' => $prompt]]] ] ], JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); $access_token = my_get_gemini_access_token(); if (!$access_token) { gemini_log(['type' => 'auth_error', 'message' => 'Failed to get access token']); // ✅ ارسال به گوگل شیت با وضعیت خطا send_to_gsheet_with_status($userData, '', 'خطا در احراز هویت', $extraFields); wp_send_json_error(['message' => 'خطا در دریافت Access Token از Google']); } $url = 'https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent'; // Log connection attempt (for both services) gemini_log([ 'type' => 'gemini_connect', 'service' => 'v1', 'url' => $url, 'payload_len' => isset($payload) ? strlen($payload) : null, 'extraFields' => isset($extraFields) ? $extraFields : null, ]); $response = wp_remote_post($url, [ 'headers' => [ 'Content-Type' => 'application/json; charset=utf-8', 'Authorization' => 'Bearer ' . $access_token, // ✅ اضافه شد ], 'body' => $payload, 'timeout' => 45, ]); if (is_wp_error($response)) { gemini_log([ 'type' => 'wp_error', 'error' => $response->get_error_message(), ]); // ✅ ارسال به گوگل شیت با وضعیت خطا send_to_gsheet_with_status($userData, '', 'خطای شبکه: ' . $response->get_error_message(), $extraFields); wp_send_json_error([ 'message' => 'در پردازش درخواست خطایی رخ داد. لطفاً بعداً تلاش کنید.' ]); } $code = wp_remote_retrieve_response_code($response); $raw_body = wp_remote_retrieve_body($response); $headers = wp_remote_retrieve_headers($response); $body = json_decode($raw_body, true); // Log HTTP details when debug is enabled if (gemini_is_debug_mode()) { gemini_log([ 'type' => 'http_debug', 'service' => 'v1', 'http_code' => $code, 'headers' => $headers, 'raw_body' => $raw_body, ]); } // ✅ بررسی کد وضعیت HTTP if ($code !== 200) { gemini_log([ 'type' => 'api_error', 'http_code' => $code, 'headers' => $headers, 'raw_body' => $raw_body, 'response' => $body, ]); $error_msg = 'خطای API - کد ' . $code; // پیام‌های خطای رایج if ($code === 429) { $error_msg = 'محدودیت درخواست - سهمیه تمام شده'; } elseif ($code === 401 || $code === 403) { $error_msg = 'خطای احراز هویت - توکن نامعتبر'; } elseif ($code === 500 || $code === 503) { $error_msg = 'سرویس Gemini موقتاً در دسترس نیست'; } // Log successful response (minimal) gemini_log([ 'type' => 'gemini_ok', 'service' => 'v1', 'http_code' => $code, ]); // ✅ ارسال به گوگل شیت با وضعیت خطا send_to_gsheet_with_status($userData, '', $error_msg, $extraFields); wp_send_json_error([ 'message' => 'سرویس موقتاً در دسترس نیست.' ]); } // استخراج جواب (با fallback ایمن) $reply = ''; if (isset($body['candidates'][0]['content']['parts'][0]['text'])) { $reply = $body['candidates'][0]['content']['parts'][0]['text']; } elseif (!empty($body['candidates'][0]['content']['parts'])) { foreach ($body['candidates'][0]['content']['parts'] as $part) { if (!empty($part['text'])) { $reply = $part['text']; break; } } } if ($reply) { // حذف ```html و ``` $reply = preg_replace('/^```html\s*/i', '', $reply); $reply = preg_replace('/```$/', '', $reply); $reply = trim($reply); } // ✅ بررسی پاسخ خالی if ($reply === '') { send_to_gsheet_with_status($userData, '', 'پاسخ خالی از Gemini', $extraFields); wp_send_json_error(['message' => 'پاسخی دریافت نشد. دوباره تلاش کنید.']); } // 1) عنوان پلن را از خروجی بگیر $selectedPlanName = ''; if (preg_match('/]*class="[^"]*plan-title[^"]*"[^>]*>(.*?)<\/h2>/si', $reply, $m)) { $selectedPlanName = trim(html_entity_decode(strip_tags($m[1]))); } if ($selectedPlanName !== '' && stripos($selectedPlanName, 'flex') !== false) { $flexBackupMsg = '
پیشنهاد ویژه بک آپ: شما میتوانید دو نسخه بک آپ کامل از سرور خود را به صورت رایگان روی سرورهای دیگر ما، بدون محدودیت حجمی، ذخیره کنید
'; } // 3) جایگذاری: اگر placeholder هست، همانجا؛ وگرنه قبل از دکمه خرید if (strpos($reply, '{{flexBackupMsg}}') !== false) { $reply = str_replace('{{flexBackupMsg}}', $flexBackupMsg, $reply); } else if ($flexBackupMsg) { $reply = str_replace('
', $flexBackupMsg . '
', $reply); } $response_data = ['reply' => $reply]; if ($debug_mode) { $response_data['debug'] = [ 'model' => 'gemini-2.0-flash', 'prompt_length' => mb_strlen($prompt, 'UTF-8'), 'user_data_length' => mb_strlen($userData, 'UTF-8'), 'plans_count' => count($plansArray), 'plans_json_length' => mb_strlen($plansJsonMin, 'UTF-8'), 'plans_sample_3' => array_slice($plansArray, 0, 3), 'api_response_raw' => $body, 'payload_sent' => json_decode($payload, true), ]; } // ✅ ارسال موفق به گوگل شیت با وضعیت موفق send_to_gsheet_with_status($userData, $selectedPlanName, 'موفق ✓', $extraFields, $reply); wp_send_json_success($response_data); } // ========================================== // ✅ تابع کمکی جدید: ارسال به Google Sheet با وضعیت // ============ // ========================================== // ✅ تابع کمکی جدید: ارسال به Google Sheet با وضعیت // ========================================== function send_to_gsheet_with_status($userData, $planName, $status, $extraFields = [], $aiResponse = '') { // $webhook_url = 'https://script.google.com/macros/s/AKfycbywyfWnfcqIrys8It_c18H6lMGeQnjdpv3LLGP7qSrsUWGHntmUGtEoN0YZX2QBgn6Y/exec'; $webhook_url = 'https://script.google.com/macros/s/AKfycbzVSwIkLziKpSaPFWV0KWHXg2lZd0BpO7Yx2T9RDRjzHIhR4dpaYaNGnM_XEiyRb1wXCA/exec'; // متن خلاصه پاسخ AI $reply_text = ''; if ($aiResponse) { $reply_text = html_entity_decode(wp_strip_all_tags($aiResponse)); if (function_exists('mb_substr')) { $reply_text = mb_substr($reply_text, 0, 45000, 'UTF-8'); } else { $reply_text = substr($reply_text, 0, 45000); } } $gs_payload = array( 'name' => $extraFields['name'] ?? '', 'phone' => $extraFields['phone'] ?? '', 'website' => $extraFields['website'] ?? '', 'userData' => $userData, 'selectedPlanName' => $planName, 'aiResponseText' => $reply_text, 'geminiStatus' => $status, // ✅ فیلد جدید 'timestamp' => current_time('Y-m-d H:i:s'), // ✅ زمان دقیق ); $args = array( 'timeout' => 12, 'headers' => array('Content-Type' => 'application/json; charset=utf-8'), 'body' => wp_json_encode($gs_payload), ); wp_remote_post($webhook_url, $args); } add_action('wp_ajax_send_to_gemini_v2', 'is_handle_send_to_gemini_v2'); add_action('wp_ajax_nopriv_send_to_gemini_v2', 'is_handle_send_to_gemini_v2'); function is_handle_send_to_gemini_v2() { // ورودی‌ها $userData = isset($_POST['userData']) ? sanitize_textarea_field(wp_unslash($_POST['userData'])) : ''; $userDataJson = isset($_POST['userDataJson']) ? json_decode(wp_unslash($_POST['userDataJson']), true) : array(); $plansJson = isset($_POST['plansJson']) ? wp_unslash($_POST['plansJson']) : ''; $hostingJson = isset($_POST['hostingJson']) ? wp_unslash($_POST['hostingJson']) : ''; $formType = isset($_POST['formType']) ? sanitize_text_field(wp_unslash($_POST['formType'])) : ''; // A یا B if ($userData === '') { wp_send_json_error(['message' => 'داده‌های کاربر دریافت نشد.']); } // نرمال‌سازی: پلن‌ها (اختیاری ولی توصیه‌شده) $normalize_unlimited = function($v){ return is_string($v) && preg_match('/unlimited/i',$v) ? 'نامحدود' : $v; }; $plansArray = []; if ($plansJson) { $raw = json_decode($plansJson, true); if (is_array($raw)) { foreach ($raw as $p) { $plansArray[] = [ 'planName' => $p['plan_name'] ?? $p['name'] ?? '', 'planType' => $p['type'] ?? '', // اگر بود 'location' => $p['location'] ?? '', // موقعیت مکانی 'storage' => $p['storage'] ?? '', // حجم هارد 'bandwidth' => $normalize_unlimited($p['bandwidth'] ?? $p['traffic'] ?? ''), // ترافیک 'controlPanel' => $p['control_panel'] ?? '', // کنترل پنل 'dns' => $p['dns'] ?? '', 'support' => $p['support'] ?? '', 'warranty' => $p['warranty'] ?? '', // اگر در داده‌ات این کلید را داشته باشی 'features' => (isset($p['features']) && is_array($p['features'])) ? array_values($p['features']) : [], 'buyLink' => $p['buyLink'] ?? $p['link'] ?? $p['url'] ?? '', ]; } } } // هاستینگ با similar_to (اختیاری) $hostingMerged = []; if ($hostingJson) { $h = json_decode($hostingJson, true); if (is_array($h)) { foreach ($h as $catKey => $cat) { $url = isset($cat['url']) ? esc_url_raw($cat['url']) : ''; $plans = isset($cat['plans']) && is_array($cat['plans']) ? $cat['plans'] : []; foreach ($plans as $pl) { $plansArray[] = [ 'planName' => $pl['plan_name'] ?? $pl['name'] ?? '', 'planType' => $catKey, // wordpress_hosting / woocommerce_hosting / ... 'location' => $pl['location'] ?? '', 'storage' => $pl['storage'] ?? '', 'bandwidth' => $normalize_unlimited($pl['bandwidth'] ?? $pl['traffic'] ?? ''), 'controlPanel' => $pl['control_panel'] ?? '', 'dns' => $pl['dns'] ?? '', 'support' => $pl['support'] ?? '', 'warranty' => $pl['warranty'] ?? '', 'features' => (isset($pl['features']) && is_array($pl['features'])) ? array_values($pl['features']) : [], 'buyLink' => $pl['buyLink'] ?? $url, ]; } } } } // محدودیت منطقی if (count($plansArray) > 400) $plansArray = array_slice($plansArray, 0, 400); $plansJsonMin = wp_json_encode($plansArray, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); // پرامپت جدید (برای دو فرم A/B) // A = دارای سایت: تاکید بر پلتفرم فعلی، مشکلات، ترافیک // B = بدون سایت: تاکید بر نوع پروژه، ترجیحات مدیریت، اولویت‌ها $prompt_header = "نقش شما «مشاور خرید هاست و سرور» است. از بین لیست پلن‌های ارائه‌شده (VPS/Dedicated + دسته‌های هاست)، دقیقا یک پلن مناسب را انتخاب کن و فقط HTML خالص (بدون بک‌تیک) برگردان."; $prompt_rules = implode("\n", [ "- فقط از داده‌های JSON استفاده کن و چیزی اختراع نکن.", "- اگر هرجا Unlimited دیدی آن را به «نامحدود» تبدیل کن.", "- خروجی باید دقیقا همان HTML داده‌شده را برگرداند و فقط جای {{...}} ها را با مقادیر پر کند.", "- اگر هر یک از فیلدهای زیر خالی بود، به جای مقدار آن «» بگذار:", " {{planName}}, {{storage}}, {{bandwidth}}, {{controlPanel}}, {{dns}}, {{support}}, {{location}}, {{warranty}}, {{featuresList}}", "- برای «سایر ویژگی‌ها»: اگر آرایه features موجود بود، {{featuresList}} را با
  • ...
بساز؛ وگرنه برای {{featuresList}} «» قرار بده.", "- برای «نام پلن» از planName استفاده کن (نه planType).", "- برای «حجم هارد» از storage، برای «ترافیک» از bandwidth، برای «کنترل پنل» از controlPanel، برای «DNS» از dns، برای «پشتیبانی» از support، برای «موقعیت مکانی» از location، برای «گارانتی استفاده از سرویس» از warranty استفاده کن.", "- مقدار {{buyLink}} را دقیقا از کلید buyLink همان پلن انتخابی بگذار." ]); $prompt_html = '

پیشنهاد هوشمند ما برای شما

بر اساس پاسخ‌های شما، این پلن بیشترین انطباق را با نیازهایتان دارد:

{{planName}}

  • نام پلن : {{planName}}
  • حجم هارد: {{storage}}
  • ترافیک: {{bandwidth}}
  • کنترل پنل: {{controlPanel}}
  • DNS : {{dns}}
  • پشتیبانی: {{support}}
  • موقعیت مکانی: {{location}}
  • گارانتی استفاده از سرویس: 14 روز
  • سایر ویژگی‌ها: {{featuresList}}
'; $prompt_user_block = "[نوع فرم]: " . ($formType === 'A' ? 'دارای سایت' : ($formType === 'B' ? 'بدون وب‌سایت' : 'نامشخص')) . "\n\n[اطلاعات کاربر]\n" . $userData; $prompt_plans = "[لیست پلن‌ها — JSON]\n" . $plansJsonMin; $prompt = implode("\n\n", [ $prompt_header, $prompt_rules, $prompt_html, $prompt_user_block, $prompt_plans ]); // فراخوانی Gemini // $api_key = 'AIzaSyCuMe-s-NxY3cFLHTX3IgW5MhzJLndpQaU'; // $url = 'https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent?key=' . $api_key; // if (!$api_key) { // wp_send_json_error(['message' => 'کلید API تنظیم نشده است.']); // } // $url = 'https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent?key=' . rawurlencode($api_key); $access_token = my_get_gemini_access_token(); if (!$access_token) { gemini_log(['type' => 'auth_error', 'message' => 'Failed to get access token in v2']); wp_send_json_error(['message' => 'خطا در دریافت Access Token از Google']); } $url = 'https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent'; // Log connection attempt (for both services) gemini_log([ 'type' => 'gemini_connect', 'service' => 'v2', 'url' => $url, 'payload_len' => isset($payload) ? strlen($payload) : null, 'extraFields' => isset($extraFields) ? $extraFields : null, ]); $payload = wp_json_encode([ 'contents' => [ ['parts' => [['text' => $prompt]]] ] ], JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); $res = wp_remote_post($url, [ 'headers' => [ 'Content-Type' => 'application/json; charset=utf-8', 'Authorization' => 'Bearer ' . $access_token, // ✅ اضافه شد ], 'body' => $payload, 'timeout' => 45, ]); if (is_wp_error($res)) { gemini_log([ 'type' => 'wp_error_v2', 'error' => $res->get_error_message(), ]); wp_send_json_error(['message' => $res->get_error_message()]); } $code = wp_remote_retrieve_response_code($res); $raw_body = wp_remote_retrieve_body($res); $headers = wp_remote_retrieve_headers($res); $body = json_decode($raw_body, true); // Log HTTP details when debug is enabled if (gemini_is_debug_mode()) { gemini_log([ 'type' => 'http_debug', 'service' => 'v2', 'http_code' => $code, 'headers' => $headers, 'raw_body' => $raw_body, ]); } if ($code !== 200) { gemini_log([ 'type' => 'api_error_v2', 'http_code' => $code, 'headers' => $headers, 'raw_body' => $raw_body, 'response' => $body, ]); wp_send_json_error([ 'message' => 'سرویس موقتاً در دسترس نیست.' ]); } // Log successful response (minimal) gemini_log([ 'type' => 'gemini_ok', 'service' => 'v2', 'http_code' => $code, ]); $reply = ''; if (!empty($body['candidates'][0]['content']['parts'])) { foreach ($body['candidates'][0]['content']['parts'] as $part) { if (!empty($part['text'])) { $reply = $part['text']; break; } } } if ($reply) { // حذف fence و اسکریپت و پاکسازی پایه $reply = preg_replace('/^```html\s*/i', '', $reply); $reply = preg_replace('/```$/', '', $reply); $reply = preg_replace('/]*>(.*?)<\/script>/is', '', $reply); $reply = trim( wp_kses_post($reply) ); } if ($reply === '') wp_send_json_error(['message' => 'پاسخی دریافت نشد.']); wp_send_json_success(['reply' => $reply]); } add_action('wp_ajax_send_to_google_sheet2', 'send_to_google_sheet2'); add_action('wp_ajax_nopriv_send_to_googl add_action('wp_ajax_send_to_google_sheet2', 'send_to_google_sheet2'); add_action('wp_ajax_nopriv_send_to_google_sheet2', 'send_to_google_sheet2'); function send_to_google_sheet2() { // گرفتن داده‌ها از درخواست $json = file_get_contents('php://input'); $data = json_decode($json, true); // آماده‌سازی payload برای Google Apps Script $payload = json_encode([ 'name' => $data['name'] ?? '', 'phone' => $data['phone'] ?? '', 'formId' => $data['formId'] ?? '', 'userData' => $data['userData'] ?? '' ]); // آدرس Google Apps Script // $scriptUrl = 'https://script.google.com/macros/s/AKfycbzVGjdRzFBEN8rpKqqThD96agccp0JKIRUf1Nkd8UfwrWU-UXfF0HONfEun_d2dLioT/exec'; $scriptUrl = 'https://script.google.com/macros/s/AKfycbw9l4nG9Cf7FO5aVugNjLK_nVzYHMWMfrgwTlnR34DaaeYci9jjngEsVyaS3al9yLRB/exec'; $response = wp_remote_post($scriptUrl, [ 'headers' => ['Content-Type' => 'application/json'], 'body' => $payload ]); // بررسی پاسخ if (is_wp_error($response)) { wp_send_json_error(['message' => 'خطا در ارتباط ']); } $body = wp_remote_retrieve_body($response); wp_send_json(json_decode($body, true)); } لایت اسپید | کمپین بلک فرایدی 2025 ایرانسرور

[vc_row height=”full” valign=”center” us_bg_image_source=”media” us_shape_show_bottom=”1″ us_shape_bottom=”zigzag” us_shape_height_bottom=”5vh” us_shape_color_bottom=”#ebf5ff” us_bg_image=”7922″ us_bg_repeat=”no-repeat” bg_type=”image” parallax_style=”vcpb-default”][vc_column width=”2/3″][vc_column_text]

قدرت لایت‌اسپید را حس کنید!

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%222rem%22%2C%22line-height%22%3A%221.7%22%2C%22letter-spacing%22%3A%22-0.04em%22%7D%7D”][/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%222rem%22%2C%22line-height%22%3A%221.7%22%2C%22letter-spacing%22%3A%22-0.04em%22%7D%7D”]همین حالا با یک‌دهم قیمت اصلی و در کمتر از ۱۵ دقیقه،
از آپاچی به لایت‌اسپید مهاجرت کنید![/vc_column_text][us_btn label=”مشاهده پلن‌ها” link=”url:%23start”][/vc_column][vc_column width=”1/3″][/vc_column][/vc_row][vc_row height=”large” us_bg_overlay_color=”linear-gradient(0deg,rgba(255,255,255,0.00),#ebf5ff)” content_placement=”middle” gap=””][vc_column][vc_row_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222.5rem%22%2C%22padding-bottom%22%3A%222.5rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D”]

سرعت بسیار بالا

با معماری رویداد محور،‌ حداقل دوبرابر سرعت بیشتر را نسبت به آپاچی تجربه کنید و هزاران کاربر را به راحتی هندل کنید.

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222.5rem%22%2C%22padding-bottom%22%3A%222.5rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D”]

امنیت پولادین

علاوه بر امکانات امنیتی،‌ از ویژگی‌های آنتی دیداس داخلی مانند پهنای باند و گلوگاه اتصال نیز بهره‌مند شوید

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222.5rem%22%2C%22padding-bottom%22%3A%222.5rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D”]

کاملاً مقرون به صرفه

با حداکثر بازدهی، بدون نیاز به افزایش منابع سرور،‌ به استقبال گسترش کسب و کار آنلاین خود بروید.

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222.5rem%22%2C%22padding-bottom%22%3A%222.5rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D”]

پیچیدگی کمتر

با لایت اسپید، دیگر به پروکسی معکوس HTTPS یا نصب لایه‌های کشینگ نیازی ندارید

[/vc_column_text][/vc_column_inner][/vc_row_inner][us_separator size=”large” el_id=”start”][us_separator size=”large” el_id=”start”][vc_column_text]

پلن ها

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-family%22%3A%22Arial%2C%20Helvetica%2C%20sans-serif%22%2C%22letter-spacing%22%3A%22-0.1em%22%2C%22margin-left%22%3A%220%22%2C%22margin-top%22%3A%220%22%2C%22margin-bottom%22%3A%220%22%2C%22margin-right%22%3A%220%22%2C%22padding-left%22%3A%220%22%2C%22padding-top%22%3A%220%22%2C%22padding-bottom%22%3A%220%22%2C%22padding-right%22%3A%220%22%2C%22position%22%3A%22relative%22%2C%22bottom%22%3A%222rem%22%7D%7D”]

[/vc_column_text][vc_row_inner content_placement=”middle”][vc_column_inner el_class=”shadow” us_bg_overlay_color=”#ffffff” width=”1/3″ css=”%7B%22default%22%3A%7B%22border-radius%22%3A%220.5rem%22%7D%7D”][us_separator size=”small”][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%221.2rem%22%2C%22line-height%22%3A%221.7%22%7D%7D”]

Professional

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%222.5rem%22%2C%22line-height%22%3A%221.7%22%2C%22letter-spacing%22%3A%22-0.04em%22%7D%7D”]

۲۴۹ هزار تومان

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%221.2rem%22%2C%22line-height%22%3A%221.7%22%7D%7D”]

۱.۴۹۵ میلیون تومان

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%221.2rem%22%2C%22line-height%22%3A%221.7%22%7D%7D”]

تعداد دامنه نامحدود

2 هسته CPU

مقدار RAM نامحدود

[/vc_column_text][us_btn label=”ثبت سفارش” link=”url:https%3A%2F%2Fhub.iranserver.com%2Fcart.php%3Fa%3Dadd%26pid%3D860″ align=”center” el_id=”LS-Professional-cta”][/vc_column_inner][vc_column_inner us_bg_overlay_color=”#0049F6″ width=”1/3″ css=”%7B%22default%22%3A%7B%22color%22%3A%22%23ffffff%22%7D%7D”][us_separator][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%221.2rem%22%2C%22line-height%22%3A%221.7%22%7D%7D”]

Enterprise

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%222.5rem%22%2C%22line-height%22%3A%221.7%22%2C%22letter-spacing%22%3A%22-0.04em%22%7D%7D”]

۲۹۹ هزار تومان

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%221.2rem%22%2C%22line-height%22%3A%221.7%22%7D%7D”]

۲.۱۱۳ میلیون تومان

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%221.2rem%22%2C%22line-height%22%3A%221.7%22%7D%7D”]

تعداد دامنه نامحدود

4 هسته CPU

مقدار RAM نامحدود

( پلن محبوب )

[/vc_column_text][us_btn label=”ثبت سفارش” link=”url:https%3A%2F%2Fhub.iranserver.com%2Fcart.php%3Fa%3Dadd%26pid%3D869″ style=”19″ align=”center” el_id=”LS-enterprise-cta”][us_separator][/vc_column_inner][vc_column_inner el_class=”shadow” us_bg_overlay_color=”#ffffff” width=”1/3″ css=”%7B%22default%22%3A%7B%22border-radius%22%3A%220.5rem%22%7D%7D”][us_separator size=”small”][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%221.2rem%22%2C%22line-height%22%3A%221.7%22%7D%7D”]

Elite

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%222.5rem%22%2C%22line-height%22%3A%221.7%22%2C%22letter-spacing%22%3A%22-0.04em%22%7D%7D”]

۳۹۹ هزار تومان

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%221.2rem%22%2C%22line-height%22%3A%221.7%22%7D%7D”]

۲.۹۹ میلیون تومان

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%221.2rem%22%2C%22line-height%22%3A%221.7%22%7D%7D”]

تعداد دامنه نامحدود

تعداد کاربر قابل تنظیم

 CPU نامحدود

 RAM نامحدود

[/vc_column_text][us_btn label=”ثبت سفارش” link=”url:https%3A%2F%2Fhub.iranserver.com%2Fcart.php%3Fa%3Dadd%26pid%3D870″ align=”center” el_id=”LS-elite-cta”][/vc_column_inner][/vc_row_inner][/vc_column][/vc_row][vc_row height=”large” us_bg_image_source=”media” us_bg_image=”8003″ us_bg_size=”contain” us_bg_repeat=”no-repeat”][vc_column][vc_column_text]

مهمترین ویژگی‌های لایت اسپید

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-family%22%3A%22Arial%2C%20Helvetica%2C%20sans-serif%22%2C%22letter-spacing%22%3A%22-0.1em%22%2C%22margin-left%22%3A%220%22%2C%22margin-top%22%3A%220%22%2C%22margin-bottom%22%3A%220%22%2C%22margin-right%22%3A%220%22%2C%22padding-left%22%3A%220%22%2C%22padding-top%22%3A%220%22%2C%22padding-bottom%22%3A%220%22%2C%22padding-right%22%3A%220%22%2C%22position%22%3A%22relative%22%2C%22bottom%22%3A%222rem%22%7D%7D”]

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%221.2rem%22%2C%22line-height%22%3A%221.7%22%7D%7D”]

لایت اسپید، با امکانات معمول آپاچی از جمله mod_rewrite ، .htaccess و mod_security کاملا سازگار است. برای همین، بدون نگرانی می‌توانید فایل‌های کانفیگ آپاچی را به راحتی در لایت‌اسپید بارگذاری کنید. همچنین لایت اسپید کاملا با کنترل پنل‌های محبوب از جمله cPanel, Plesk, DirectAdmin, CyberPanel سازگار است.

جایگزینی لایت‌اسپید به جای آپاچی، کمتر از 15 دقیقه وقت شما را می‌گیرد، بدون اینکه سرویس شما، ثانیه‌ای قطع شود.

[/vc_column_text][us_separator size=”small”][vc_row_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

HTTP/2, QUIC, HTTP/3

پیشرو در پشتیبانی مطمئن از تکنولوژی های جدید

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

Event Driven Architecture

فرایندهای کم تر، overload کم تر، مقیاس پذیری فوق العاده

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

Cutting-Edge HTTP/3 Support

عملکرد فوق العاده در اجرای HTTP/3 و استفاده از بروزترین نسخه

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

Apache Drop-in Replacement

امکان خواندن تنظیمات فایل های Apache بصورت مستقیم و پشیبانی از htaccess و .WAF

[/vc_column_text][/vc_column_inner][/vc_row_inner][us_separator][vc_row_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

سازگار با ModSecurity

پشتیبانی و سازگار با قوانین ModSecurity یا ModSec

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

Redis Dynamic vHost

دسترسی پذیری بالا برای Redis dynamic virtual hosts

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

یکپارچگی با CloudLinux

پشتیبانی از LVE, CageFS, PHP/Ruby/Python Selector

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

دسترسی نامحدود

پشتبانی از ویژگی های منحصر به فرد برای دسترسی نامحدود و هم زمان

[/vc_column_text][/vc_column_inner][/vc_row_inner][us_separator][vc_row_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

کشینگ پیشرفته ESI

قابلیت کشینگ پیشرفته با اسفاده از تکنولوژی ESI

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

Mass Hosting Support

امکان مدیریت چند هاست روی یک یوزر به کمک سیستم کش Redis

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

reCAPTCHA درلایه سرور

محافظت در برابر حملات DDoS لایه 7

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

Ruby / Python / NodeJS

پشتیبانی از اپلیکشین های Ruby، Python و NodeJS

[/vc_column_text][/vc_column_inner][/vc_row_inner][us_separator][vc_row_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

HTTPS / HTTP/2

عملکرد خوب در اجرای HTTPS به کمک بهبود TLS-record-level

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

SSL Offloading

SSL Offloading برای جلوگیری قطعی سرور

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

Control Panel Compatible

سازگار با کنترل پنل های Panel, Plesk, DirectAdmin, CyberPanel

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

HTTPS / TLSv1.3 Certificate

پشتیبانی از TLS نسخه 1.3 و کاهش handshake exchange

[/vc_column_text][/vc_column_inner][/vc_row_inner][us_separator][vc_row_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

Zero-Downtime Maintenance

قابلیت restart و آپدیت نرم افزاری بدون downtime

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

One-Click Cache Acceleration

امکان استقرار گسترده LSCache برای وردپرس

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

Fastest PHP Available

بهترین عملکرد PHP در صورت نصب LSPHP و فعال بودن suEXEC

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/4″][vc_column_text css=”%7B%22default%22%3A%7B%22color%22%3A%22%231a1a1a%22%2C%22text-align%22%3A%22center%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.5rem%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22margin-left%22%3A%220%22%2C%22padding-left%22%3A%222rem%22%2C%22padding-top%22%3A%222rem%22%2C%22padding-bottom%22%3A%222rem%22%2C%22padding-right%22%3A%222rem%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D” el_class=”shadow”]

Ruby + Python App Server

قابلیت انتخاب هندل کردن Ruby و Python به کمک LSAPI

[/vc_column_text][/vc_column_inner][/vc_row_inner][/vc_column][/vc_row][vc_row height=”huge” us_shape_show_top=”1″ us_shape_top=”zigzag” us_shape_height_top=”2vh” us_shape_overlap_top=”1″ us_shape_flip_top=”1″ us_shape_show_bottom=”1″ us_shape_bottom=”zigzag” us_shape_height_bottom=”2vh” css=”%7B%22default%22%3A%7B%22color%22%3A%22%23ffffff%22%2C%22background-color%22%3A%22%23002d73%22%7D%7D”][vc_column][vc_column_text]

مدیریت بهتر منابع با استفاده از LiteSpeed

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-family%22%3A%22Arial%2C%20Helvetica%2C%20sans-serif%22%2C%22letter-spacing%22%3A%22-0.1em%22%2C%22margin-left%22%3A%220%22%2C%22margin-top%22%3A%220%22%2C%22margin-bottom%22%3A%220%22%2C%22margin-right%22%3A%220%22%2C%22padding-left%22%3A%220%22%2C%22padding-top%22%3A%220%22%2C%22padding-bottom%22%3A%220%22%2C%22padding-right%22%3A%220%22%2C%22position%22%3A%22relative%22%2C%22bottom%22%3A%222rem%22%7D%7D”]

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-size%22%3A%221.6rem%22%7D%7D”]استفاده بهینه‌تر از core های CPU و مدیریت بهتر منابع سرور از جمله RAM و CPU از مصرف بیش از حد منابع توسط یک کاربر و در نتیجه از کندی سایت جلوگیری می‌کند.[/vc_column_text][/vc_column][/vc_row][vc_row height=”huge” us_shape_show_bottom=”1″ us_shape_bottom=”zigzag” us_shape_height_bottom=”5vh” us_shape_color_bottom=”#EBF5FF” us_shape_overlap_bottom=”1″ us_shape_flip_bottom=”1″][vc_column][vc_column_text]

لایت اسپید در مقایسه با آپاچی و Nginx

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-family%22%3A%22Arial%2C%20Helvetica%2C%20sans-serif%22%2C%22letter-spacing%22%3A%22-0.1em%22%2C%22margin-left%22%3A%220%22%2C%22margin-top%22%3A%220%22%2C%22margin-bottom%22%3A%220%22%2C%22margin-right%22%3A%220%22%2C%22padding-left%22%3A%220%22%2C%22padding-top%22%3A%220%22%2C%22padding-bottom%22%3A%220%22%2C%22padding-right%22%3A%220%22%2C%22position%22%3A%22relative%22%2C%22bottom%22%3A%222rem%22%7D%7D”]

[/vc_column_text][vc_row_inner][vc_column_inner width=”1/2″][us_image image=”7961″ size=”full”][/vc_column_inner][vc_column_inner width=”1/2″][us_image image=”7962″ size=”full”][/vc_column_inner][/vc_row_inner][/vc_column][/vc_row][vc_row height=”huge” us_shape_show_bottom=”1″ us_shape_bottom=”zigzag” us_shape_height_bottom=”5vh” us_shape_color_bottom=”#ffffff” css=”%7B%22default%22%3A%7B%22background-color%22%3A%22%23ebf5ff%22%7D%7D”][vc_column][vc_column_text]

سوالات متداول

[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-family%22%3A%22Arial%2C%20Helvetica%2C%20sans-serif%22%2C%22letter-spacing%22%3A%22-0.1em%22%2C%22margin-left%22%3A%220%22%2C%22margin-top%22%3A%220%22%2C%22margin-bottom%22%3A%220%22%2C%22margin-right%22%3A%220%22%2C%22padding-left%22%3A%220%22%2C%22padding-top%22%3A%220%22%2C%22padding-bottom%22%3A%220%22%2C%22padding-right%22%3A%220%22%2C%22position%22%3A%22relative%22%2C%22bottom%22%3A%222rem%22%7D%7D”]

[/vc_column_text][vc_tta_accordion c_align=”right” title_size=”1.2rem” title_tag=”h5″ c_position=”left” css=”%7B%22default%22%3A%7B%22font-size%22%3A%221.2rem%22%2C%22line-height%22%3A%221.7%22%2C%22background-color%22%3A%22%23ffffff%22%2C%22border-radius%22%3A%220.5rem%22%7D%7D”][vc_tta_section tab_id=”1612171371458-1a5052fd-4439″ title=”وب‌سرور لایت اسپید چیست؟”][vc_column_text]

LiteSpeed Web Server جایگزین قدرتمندی برای Apache است و سروری با عملکرد بالا و مقیاس پذیری بالا با استفاده از LiteSpeed Technologies است. بدون تغییر در پیکربندی یا جزئیات سیستم عامل، می توانید سرور Apache موجود خود را با LiteSpeed جایگزین کنید. LiteSpeed به عنوان یک جایگزین افت، به شما امکان می دهد در 15 دقیقه و بدون وقفه، گلوگاه‌های Apache را به سرعت از بین ببرید. طیف گسترده‌ی  ویژگی‌های LiteSpeed، کنسول مدیریت وب با رابط کاربری آسان، دارایی هر زیرساخت موثر میزبانی وب هستند.

[/vc_column_text][/vc_tta_section][vc_tta_section tab_id=”1624101427396-92cc3815-2ba7″ title=”لایسنس لایت اسپید اقتصادی چه تفاوتی با لایسنس اصلی لایت اسپید دارد؟”][vc_column_text]

از نظر ساختار کارکرد وب سرور و پاسخگویی به سایتها هیچ تفاوتی با لایسنس اصلی ندارد. تنها تفاوت موجود، در سیستم ولیدیشن لایسنس می‌باشد که در لایسنس اقتصادی این مرجع متفاوت است و در فرآیند عملکرد سرور شما تاثیری ندارد.

[/vc_column_text][/vc_tta_section][vc_tta_section tab_id=”1612171371515-9dbad766-734b” title=”وب سرور LiteSpeed چه مزیت‌هایی دارد؟”][vc_column_text]

بسته به تنظیمات خاص هر سرور ، میزان بهره مندی از مزایا LiteSpeed برای هر سیستم ممکن است متفاوت باشد. به طور کلی ، مشتریان ما به ما می گویند که از کاهش قابل توجه بار سرور و کاهش زمان بارگیری یا لودینگ سایت لذت می برند. از دیگر مزایای آن می توان به افزایش امنیت ، کاهش هزینه های سخت افزار ، سهولت در بروزرسانی از Apache و افزایش رضایت مشتری اشاره کرد. به علاوه ، افزونه های ذخیره LiteSpeed برای CMS اصلی (WordPress ، Drupal ، Joomla ، PrestaShop ، Magento ، OpenCart و موارد دیگر) باعث تسریع در سرعت سایت های شما می شوند

[/vc_column_text][/vc_tta_section][vc_tta_section tab_id=”1612171528681-6a17a564-3649″ title=”آیا وب سرور LiteSpeed امن است؟”][vc_column_text]

 LiteSpeed امنیت را جدی می گیرد. وب سرور با mod_security سازگار است و به ویژگیهای پیشرفته ضد DDoS مجهز شده است تا مهاجمان را قبل از ایجاد مشکلات جدی متوقف کند.

[/vc_column_text][/vc_tta_section][vc_tta_section tab_id=”1612171550819-67d3445f-4c41″ title=”آیا وب سرور LiteSpeed مقرون به صرفه است؟”][vc_column_text]

هنگامی که از Apache به LiteSpeed Web Server مهاجرت میکنید، هزینه‌ای را متحمل می‌شوید، اما این هزینه معمولاً بسیار کمتر از هزینه ارتقا سخت‌افزاری است که برای دریافت همان عملکرد تحت Apache لازم دارید.

[/vc_column_text][/vc_tta_section][vc_tta_section tab_id=”1612171573229-20f38f56-79c9″ title=”LiteSpeed Web Server هر چند وقت یکبار نسخه های جدید ارائه می دهد؟”][vc_column_text]

LiteSpeed بین هر نسخه زمان مشخصی ندارد، اما برای بروزرسانی مدام در تلاش است.

[/vc_column_text][/vc_tta_section][vc_tta_section tab_id=”1612171595130-2ce8a187-8ace” title=”آیا لایت اسپید روی VPS هم نصب می‌شود؟”][vc_column_text]بله ، می توانید از وب سرور LiteSpeed در VPS استفاده کنید.[/vc_column_text][/vc_tta_section][vc_tta_section tab_id=”1612171614831-cf305c40-8a66″ title=”LiteSpeed Web Server چگونه با Apache و nginx مقایسه می شود؟”][vc_column_text]

وب سرور LiteSpeed به شکلی طراحی و ساخته شد تا بهترین کارکرد های nginx و Apache یعنی معماری مبتنی بر رویدادها مانند nginx و سازگاری بالای .htaccess در Apache را داشته باشد.

با توجه معماری مبتنی بر رویداد، LiteSpeed Web Server منابع کمتری نسبت به مدل مبتنی بر فرآیند Apache مصرف می کند و منجر به عملکرد بهتر می‌شود. LSWS توانایی سرویس دهی همزمان به هزاران مشتری را با حداقل استفاده از حافظه و پردازنده دارد. افزایش ناگهانی ترافیک برای LiteSpeed مشکلی ندارد. و از آنجا که LiteSpeed می‌تواند مستقیماً پرونده های پیکربندی Apache را بخواند (برخلاف nginx)، بنابراین LiteSpeed Web Server با کنترل پنل هایی که برای Apache نوشته شده سازگار است. جابجایی از Apache در 15 دقیقه انجام می شود.

[/vc_column_text][/vc_tta_section][vc_tta_section tab_id=”1612171676924-306865b9-57d4″ title=”LiteSpeed Web Server با چه پنل های کنترل سازگار است؟”][vc_column_text]LiteSpeed Web Server با هر صفحه کنترل سازگار با Apache مانند cPanel ، Plesk و Direct Admin قابل استفاده است.[/vc_column_text][/vc_tta_section][/vc_tta_accordion][/vc_column][/vc_row][vc_row][vc_column][vc_row_inner][vc_column_inner width=”1/2″][vc_column_text css=”%7B%22default%22%3A%7B%22font-family%22%3A%22campb%22%2C%22font-size%22%3A%221.8rem%22%2C%22line-height%22%3A%221.7%22%2C%22margin-bottom%22%3A%220.5rem%22%2C%22padding-bottom%22%3A%220%22%7D%7D”]۰۲۱۲۲۰۹۲۰۳۷ – ۰۵۱۳۱۷۷۶[/vc_column_text][vc_column_text css=”%7B%22default%22%3A%7B%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.3rem%22%2C%22line-height%22%3A%221.7%22%2C%22margin-top%22%3A%220%22%2C%22padding-top%22%3A%220%22%7D%7D”]

[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/2″][us_socials items=”%5B%7B%22type%22%3A%22telegram%22%2C%22url%22%3A%22https%3A%2F%2Ft.me%2Firanservercom%22%2C%22icon%22%3A%22fab%7Capple%22%2C%22color%22%3A%22_content_faded%22%7D%2C%7B%22type%22%3A%22twitter%22%2C%22url%22%3A%22https%3A%2F%2Ftwitter.com%2Firanserver%22%2C%22icon%22%3A%22fab%7Capple%22%2C%22color%22%3A%22_content_faded%22%7D%2C%7B%22type%22%3A%22instagram%22%2C%22url%22%3A%22https%3A%2F%2Fwww.instagram.com%2Firanserver%22%2C%22icon%22%3A%22fab%7Capple%22%2C%22color%22%3A%22_content_faded%22%7D%5D” icons_color=”text” shape=”none” gap=”0.5rem” hide_tooltip=”1″ css=”%7B%22default%22%3A%7B%22text-align%22%3A%22left%22%2C%22font-size%22%3A%222rem%22%7D%7D”][vc_column_text css=”%7B%22default%22%3A%7B%22text-align%22%3A%22left%22%2C%22font-family%22%3A%22campr%22%2C%22font-size%22%3A%221.3rem%22%2C%22line-height%22%3A%221.7%22%2C%22margin-top%22%3A%221rem%22%2C%22padding-top%22%3A%220%22%7D%7D”]

[/vc_column_text][/vc_column_inner][/vc_row_inner][/vc_column][/vc_row]