Поддержка Проблемы и решения Как сделать правильный редирект

  • Добрый день.
    У моего знакомого уже давно есть сайт. Делал он его сам, и по неопытности накосячил. Теперь его сайт имеет адрес вида http://www.sitename.ru/wordpress

    Теперь он просит меня с этим помочь.

    В связи с этим, вопрос: что можно сделать, что бы адрес сайта принял нормальный вид типа http://www.sitename.ru и при этом страницы и записи, уже имеющие какие-то показатели у поисковиков (да и ссылки на них в сети встречаются), не потеряли свой вес.

    Покопавшись в сети, я попробовал добиться желаемого путём добавления

    RewriteRule ^wordpress/(.+)$ http://www.sitename.ru/$1 [R=301,L]

    в файл .htaccess
    Но то ли от того, что таких файла два (один в корне сайта, второй в той самой папке wordpress), то ли ещё по какой-то причине, но это не сработало.

    Помогите.
    Заранее благодарен.

Просмотр 8 ответов — с 1 по 8 (всего 8)
  • Модератор Yui

    (@fierevere)

    ゆい

    Автор smargelov

    (@smargelov)

    Yui

    Очень оперативно и, кажется, то что нужно. Спасибо. Буду пробовать.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Покопавшись в сети, я попробовал добиться желаемого путём добавления

    RewriteRule ^wordpress/(.+)$ http://www.sitename.ru/$1 [R=301,L]

    в файл .htaccess

    Эта команда для перенаправления старых ссылок сработает, только если WordPress уже перемещён в корневой каталог.

    Автор smargelov

    (@smargelov)

    А можно ли без перемещения, используя только редиректы в .htaccess добиться желаемого. Перемещение небезопасно да и хлопотно (слишком много файлов — слишком большая нагрузка на сервер. Падает).

    При вот этом варианте тоже не всё гладко. Админка остается в подпапке, поесть находясь на морде, ты как бы и не зарегестрированный пользователь. Что очень не удобно. Да и гугловский бот слишком много на 404 попадает.

    Надеюсь, не сильно ламерским языком объяснил.

    Спасибо

    Модератор Yui

    (@fierevere)

    ゆい

    только так или полностью перемещать.

    Если делать только редиректы, то получится циклическая переадресация

    Админка остается в подпапке

    можно все оставить в подпапке, главное вынести модифицированый index.php, .htaccess с обычными правилами реврайтов, robots.txt

    на морде, ты как бы и не зарегестрированный пользователь

    надо перелогиниться, только вход будет не сайт/wp-login.php а сайт/wordpress/wp-login.php
    за исключением некоторой непривычности все работает корректно

    Да и гугловский бот слишком много на 404 попадает.

    он вообще инсталляцию WP индексировать не должен, а только статьи и содержимое wp-content/uploads

    Модератор Yui

    (@fierevere)

    ゆい

    на вашем месте я бы просто вынесла index.php
    вот такого вида в корень (комментарии убрала из кода для компактности

    <?php
    define('WP_USE_THEMES', true);
    require('./wordpress/wp-blog-header.php');

    и написала бы в wordpress/wp-config.php такие директивы

    define('WP_HOME', 'http://site.ru');
    define('WP_SITEURL', 'http://site.ru/wordpress');
    define('WP_CONTENT_DIR', '/document_root/wordpress/wp-content');
    define('WP_CONTENT_URL', 'http://site.ru/wordpress/wp-content');
    define('WP_PLUGIN_DIR', '/document_root/wordpress/wp-content/plugins');
    define('WP_PLUGIN_URL', 'http://site.ru/wordpress/wp-content/plugins');

    document_root — абсолютный путь к папке корня сайта (/home/user/public_html например)

    на этом ваше перемещение было бы закончено, только robots.txt переписать надо было бы еще

    Автор smargelov

    (@smargelov)

    Yui

    Всё бы хорошо, да только проблемы остаются. Так, например, сейчас на сайте стоит заглушка, которая пускает на сайт только администратора. Так вот, в админку я зайти могу, но морду увидеть — уже нет. Не тот домен, а следовательно ни черной панели управления (сверху), ни даже просто посмотреть дизайн я не могу.

    Видимо и правда, придется переносить полностью. (((

    Модератор Yui

    (@fierevere)

    ゆい

    define('WP_HOME', 'http://site.ru');
    define('WP_SITEURL', 'http://site.ru/wordpress');

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

Просмотр 8 ответов — с 1 по 8 (всего 8)
  • Тема «Как сделать правильный редирект» закрыта для новых ответов.