Задать вопрос
@viktorross

Как исправить субдомен на поддомен?

Здравствуйте, подскажите пожалуйста как сменить субдомен на поддомен?
Нашел кусок кода который отвечает за это, он большой, но я так понимаю, что нужно менять строки с таким содержанием:

header("Location: http://" . $this->buildLocationSubdomain($val) . "." . $main_domain . $_SERVER["REQUEST_URI"]);


на

header("Location: http://" . $main_domain . "/" . $this->buildLocationSubdomain($val) . $_SERVER["REQUEST_URI"]);


Попробовал, не работает..
Возможно что-то еще нужно менять, или нужно переделывать скрипт? весь скрипт слишком большой, но я думаю что эти строки отвечают за формирование адреса

} else {
                $city_name = "";
                if ($get_city) {
                    $city_name = $this->getLocationName($settings["subdomain_field"], $get_city);
                }
                $expire = time() + 60 * 60 * 24 * 365;
                setcookie("location_" . $settings["subdomain_field"], $city_name, $expire, "/", "." . $main_domain);
                if ($city_name) {
                    $new_city = $get_city;
                }
            }
            if ($new_city) {
                header("Location: http://" . $new_city . "." . $main_domain . $_SERVER["REQUEST_URI"]);
            } else {
                $s = substr_count($config_live_site, "www") ? "www." : "";
                header("Location: http://" . $s . $main_domain . $_SERVER["REQUEST_URI"]);
            }
            exit(0);
        }
        if ($cookie_city && $get_city != "m" && $cookie_city != $get_city) {
            header("Location: http://" . $cookie_city . "." . $main_domain . $_SERVER["REQUEST_URI"]);
            exit(0);
        }
        if ($cookie_city) {
            if (stristr($config_live_site, "www")) {
                $config_live_site = str_replace("http://www.", "http://" . $cookie_city . ".", $config_live_site);
            } else {
                $config_live_site = str_replace("http://", "http://" . $cookie_city . ".", $config_live_site);
            }
        }


еще кусок

public function setConfigLiveSite()
    {
        global $location_array;
        global $settings;
        if (isset($location_array[$settings["subdomain_field"]])) {
            $cookie_city = $this->buildLocationSubdomain($location_array[$settings["subdomain_field"]]);
        }
        if (!$cookie_city) {
            return NULL;
        }
        global $config_live_site;
        if (stristr($config_live_site, "www")) {
            $config_live_site = str_replace("http://www.", "http://" . $cookie_city . ".", $config_live_site);
        } else {
            $config_live_site = str_replace("http://", "http://" . $cookie_city . ".", $config_live_site);
        }
    }


еще

public function setConfigLiveSiteNoCookie()
    {
        $get_city = "";
        if (isset($_GET["crt_city"]) && $_GET["crt_city"]) {
            $get_city = $_GET["crt_city"];
        }
        if (!$get_city) {
            return NULL;
        }
        global $config_live_site;
        if (stristr($config_live_site, "www")) {
            $config_live_site = str_replace("http://www.", "http://" . $get_city . ".", $config_live_site);
        } else {
            $config_live_site = str_replace("http://", "http://" . $get_city . ".", $config_live_site);
        }
    }
  • Вопрос задан
  • 91 просмотр
Подписаться 1 Простой 3 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы