• 1400/04/24

برطرف کردن ریدایرکت 301 با php :

سلام من با کد php مشکل ریدایرکت 301 رو حل کردم که دقت کنید برای کل صفحات هست و مشکل خطای 301 کل صفحات رو درست میکنه، که میتونید استفاده بکنید

کد پی اچ پی ریدایرکت، طوری هست که باید تو همه ی صفحات باشه، مگر معماری که بنده تو سایتم استفاده کردم که فایلی هست که تمام فایلهای سایتم توش require شدن (فایل مادر). اگر برای شما اینطوری نیست میتونید این کد رو توی فایلی کپی کنید و بالای تمام صفحات سایتتون require بکنید.

      نکته خیلی مهم این هست که شما باید اون دامین اصلی که میخاین به اون ریدایرکت بشه رو مقدار $chosenDomain تعیین کنید. و نکته دوم  اینکه باید تو خط اول و قبل از کد <html> اجرا بشه. همین و تمام

// URL Resolve
function checkUrl()
{
   // request url
   $requestUrl = $_SERVER["REQUEST_URI"];
   $requestUrl = trim($requestUrl, "/ ");

   // protocal
   $protocal = (stripos($_SERVER["SERVER_PROTOCOL"], "https")) ? "https://" : "htt    p://";

   // domain
   $domain = $_SERVER["SERVER_NAME"];

   // current domain
   $currentDomain = $protocal . $domain;

   // chosen domain
   $chosenDomain = "https://example.com";
   
   if ($requestUrl == "") {
       if ($currentDomain != $chosenDomain) {
           redirect($chosenDomain);
       }
   } else {
       if ($currentDomain != $chosenDomain) {
           redirect(trim($chosenDomain, "/ ") . "/" . $requestUrl);
       }
   }
   
}

// redirect
function redirect($url)
{
   header("Location: " . $url);
   exit;
}

checkUrl();

اگر مشکلی چیزی داشتین خودتون حل کنید خیلی ساده نوشتم :)

  • 1400/04/24
  • ساعت 23:01

سلام

ممنون از شما