Технический сбой

Сайт временно работает в режиме только для чтения, идут восстановительные работы. Приносим свои извинения за неудобства.
DLE FAQ » Все вопросы » Общие вопросы по PHP » Мобильная версия сайта на поддомене

Мобильная версия сайта на поддомене


     мобильная, версия, поддомен    Общие вопросы по PHP, Хаки    6604

вопрос
Прошу помощи у специалистов. Ситуация следующая. Я сделал мобильную версию сайта на поддомене по этому способу:

Способ оказался рабочий, всё прекрасно, но есть один жирный минус: Если человек заходит с мобильного устройства по адресу http://site.ru/1-news.html, то его перебрасывает на главную страницу мобильной версии сайта http://m.site.ru/, а не http://m.site.ru/1-news.html. Хотелось бы устранить этот недостаток. Подозреваю, что нужно что-то дописать в строке
header( 'Location: http://' . $msite . '/' );
, но я не уверен...

Ответа пока нет


6 комментариев

ПафНутиЙ
Админ

ПафНутиЙ - -

Посмотрите вот эту запись: https://dle-faq.ru/snippets/htaccess-snippets/5050-redirekt-mobilnyh-ustroystv-cherez-htaccsess.html
возможно поможет.

Каков вопрос - таков и ответ. Просто помните об этом.

bambuk
Юзер

bambuk - -

Спасибо, ПафНутиЙ, но, к сожалению, этот вариант не помог. Мне кажется решение не должно быть сложным. Движок определяя мобильное устройство просто переадресует на ту же публикацию только на поддомене. Как то бы это прикрутить, думаю многие бы воспользовались этим советом.

ПафНутиЙ
Админ

ПафНутиЙ - -

тут кроется один минус и жииирный - дубли.
чем вам не угодил стандартный функционал по определению мобильника и подачи ему другого шаблона?

Каков вопрос - таков и ответ. Просто помните об этом.

bambuk
Юзер

bambuk - -

Да и действительно, ПафНутиЙ, убедили Вы меня. Зачем мне эти дубли? Зачем поддомен? Вернул всё обратно как было. Всем спасибо за помощь.

dj-avtosh
PHP-developer

dj-avtosh - -

Смотрите в сторону

    RewriteCond %{HTTP_HOST} 


{REQUEST_URI}

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

249893
Юзер

249893 - -

вставь этот код и будет переводить как тебе нужно)

$msite = clean_url ( 'm.site.ru' ); //m.site.ru меняем на свой поддомен, на котором будет находится смарт версия.
if ( isset( $_REQUEST['action'] ) and $_REQUEST['action'] == 'mobiledisable' )
{
    $_SESSION['mobile_disable'] = true;
    header( 'HTTP/1.1 303 See Other' );
    header( 'Location: ' . $config['http_home_url'] );

    die();
}

if ( $config['allow_smartphone'] )
{
    if ( clean_url ( $_SERVER['HTTP_HOST'] ) != $msite AND ( ( ! $_SESSION['mobile_disable'] AND check_smartphone() ) OR ( isset( $_REQUEST['action'] ) and $_REQUEST['action'] == 'mobile' ) ) )
    {
        $_SESSION['mobile_disable'] = true;
        header( 'HTTP/1.1 303 See Other' );
        header( 'Location: http://' . $msite . '/' );

        die();
    }
    
    if ( clean_url ( $_SERVER['HTTP_HOST'] ) == $msite AND @is_dir ( ROOT_DIR . '/templates/smartphone' ) )
    {
        $config['skin'] = "smartphone";
        $smartphone_detected = true;
        $config['ajax'] = false;
        $config['allow_comments_wysiwyg'] = "no";

    }
}

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

наверх