We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 36317
    • 17 Posts
    Уважаемые гуру!
    Ситуация в следующем, был статичный сайт. Решил я его перенести на MODx.
    Для испытания создал поддомен, установил движок и перенес информацию.
    Вроде бы все в порядке. Так как есть немного внешних ссылок, а пути поменялись и я изменил УРЛы, сделал в .htaccess редиректы некоторых страниц. Все замечательно работало.
    Сегодня перенес файлы MODx из подкаталога в корневой, прописал в админке пути.
    Но почему-то редирект стал криво работать.
    Например есть такой код Redirect 301 /law/fz3185.htm http://www.psychepravo.ru/law/fz-rf/o-psihiatricheskoj-pomoshhi-fz-3185.htm
    При запросе http://www.psychepravo.ru//law/fz3185.htm движок выдает вместо нужной страницы следующую http://www.psychepravo.ru/law/fz-rf/o-psihiatricheskoj-pomoshhi-fz-3185.htm?q=law/fz3185.htm
    Как видно он добавляет к нужному УРЛу ?q=law/fz3185.htm
    Почему это происходит?
    И как с этим бороться?
      • 897
      • 1,620 Posts
      код .htaccess покажите
        "Und wenn du lange in einen Abgrund blickst, blickt der Abgrund auch in dich hinein."

        Не используйте Revo для "просто сайтов". Используйте Evo

        Who can defeat the Russian bear?
        • 36317
        • 17 Posts
        # For full documentation and other suggested options, please see
        # http://svn.modxcms.com/docs/display/MODx096/Friendly+URL+Solutions
        # including for unexpected logouts in multi-server/cloud environments
        # and especially for the first three commented out rules

        #php_flag register_globals Off
        #AddDefaultCharset utf-8
        #php_value date.timezone Europe/Moscow

        Options +FollowSymlinks
        RewriteEngine On
        RewriteBase /

        # Fix Apache internal dummy connections from breaking [(site_url)] cache
        RewriteCond %{HTTP_USER_AGENT} ^.*internal\ dummy\ connection.*$ [NC]
        RewriteRule .* - [F,L]

        # Rewrite domain.com -> www.domain.com -- used with SEO Strict URLs plugin
        RewriteCond %{HTTP_HOST} .
        RewriteCond %{HTTP_HOST} !^www\.psychepravo\.ru [NC]
        RewriteRule (.*) http://www.psychepravo.ru/$1 [R=301,L]

        # Exclude /assets and /manager directories and images from rewrite rules
        RewriteRule ^(manager|assets)/*$ - [L]
        RewriteRule \.(jpg|jpeg|png|gif|ico)$ - [L]

        # For Friendly URLs
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

        # Reduce server overhead by enabling output compression if supported.
        #php_flag zlib.output_compression On
        #php_value zlib.output_compression_level 5

        # Скачивание файлов, а не открытие в новом окне
        AddType application/octet-stream .rar .doc .mov .avi .pdf .xls .mp4

        # Редиректы для существующих внешних ссылок
        Redirect 301 /law/fz3185.htm http://www.psychepravo.ru/law/fz-rf/o-psihiatricheskoj-pomoshhi-fz-3185.htm

        И далее еще коды редиректа пары десятков страниц
          • 22668
          • 718 Posts
          Я делаю так
          RewriteRule ^law/fz3185.htm$ http://www.psychepravo.ru/law/fz-rf/o-psihiatricheskoj-pomoshhi-fz-3185.htm [L,NE,R=301]
            • 36317
            • 17 Posts
            Quote from: Paprikas at May 30, 2011, 07:44 AM

            Я делаю так
            RewriteRule ^law/fz3185.htm$ http://www.psychepravo.ru/law/fz-rf/o-psihiatricheskoj-pomoshhi-fz-3185.htm [L,NE,R=301]

            Paprikas, попробовал, сейчас этот код прописан в .htaccess
            Переадресация вообще не срабатывает
              • 5666
              • 12 Posts
              Правила редиректа должны быть выше блока обработки дружественных урлов (For Friendly URLs).
                • 36317
                • 17 Posts
                Quote from: comand0s at May 30, 2011, 10:01 AM

                Правила редиректа должны быть выше блока обработки дружественных урлов (For Friendly URLs).

                comand0s, разместил под RewriteBase /, не помогло, картина та же.
                  • 5666
                  • 12 Posts
                  Попробуйте через RewriteRule над блоком For Friendly URLs. Точно работает делал не раз.
                    • 22668
                    • 718 Posts
                    У меня так:

                    Options +FollowSymlinks
                    RewriteEngine On
                    RewriteBase /

                    РЕДИРЕКТЫ

                    Редирект с ввв на без ввв

                    Дружественные правила
                      • 36317
                      • 17 Posts
                      Quote from: comand0s at May 30, 2011, 11:09 AM

                      Попробуйте через RewriteRule над блоком For Friendly URLs. Точно работает делал не раз.

                      comand0s и Paprikas спасибо!
                      Это решение помогло.
                      Но остался вопрос почему все же директива Redirect не работает. До переноса работала.

                      Еще появилась проблема, через TinyMCE перестали отображаться файлы изображения. Хотя через управление файлами они видны. *Решение оказалось простым, описано здесь http://modxcms.com/forums/index.php?topic=26098.0

                      Подумывал полностью переставить движок, сделал пробную установку в другом месте и импортировал БД. Но, к сожалению полностью структура сайта не воссоздалась.
                      А вообще возможно на новую установку прикрутить другую БД с полным восстановлением данных?
                      Хотя этот вопрос, конечно, надо выносить в другую тему.