[Помогите] Страница логина, админка, .htaccess и ЧПУ

Тема в разделе "Wordpress", создана пользователем LodeRunner, 25 окт 2011.

Статус темы:
Закрыта.
Модераторы: Sorcus
  1. LodeRunner

    LodeRunner

    Регистр.:
    10 фев 2010
    Сообщения:
    220
    Симпатии:
    12
    Возникла проблема с WordPress. Помогите разобраться пожалуйста.
    В корне сайта стоит файл .htaccess с таким содержанием:
    Код:
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress
    <Files wp-login.php>
    Order Deny,Allow
    Deny from all
    Allow from [разрешенные ip]
    AuthName "Private zone!"
    AuthType Basic
    AuthUserFile [путь к файлу с зашифрованным паролем]
    require user [логин]
    </Files>
    
    Первая часть этого файла, заключенная между строками # BEGIN WordPress и # END WordPress, отвечает за постоянные ссылки и ЧПУ, сгенерированная в админке ВордПресса.
    Вторая часть этого файла ограничивает по IP и закрывает через пароль доступ к странице логина www.site.ru/wp-login.php
    Так вот в чем проблема - ничего не работает! Т.е. когда я хочу зайти на эту страницу логина www.site.ru/wp-login.php или в админку www.site.ru/wp-admin/, то на сайте образуется ошибка 404 и пишется, что такой страницы не существует!
    Как только я удаляю из файла .htaccess первую часть, отвечающую за ЧПУ и ссылки, то сразу все начинает работать - появляется доступ к странице логина и админки + работает ограничение доступа к ним. Но без этой первой части с заданием правил для ссылок обойтись нельзя, т.к. мне нужны ЧПУ-ссылки.
    Если же я в файле .htaccess первую часть с ЧПУ оставляю, а удаляю только вторую часть, отвечающую за ограничение доступа, то тоже все начинает нормально работать и доступ к админке появляется. Но без этой второй части с заданием правил ограничения доступа к админке тоже нельзя обойтись, т.к. мне нужна защита админки и ограничение доступа по IP.
    В общем почему-то эти 2 части в файле .htaccess между собой не работают и в итоге выдают ошибку 404 при попытке зайти на страницу логина или админки. А вот если удалить 1 или 2 правило из файла .htaccess, то по отдельности все нормально работает.
    Не пойму в чем же здесь проблема? Эти же 2 правила никак не связаны между собой, так почему они вместе не работают? Помогите разобраться пожалуйста.


    ---------- Post added at 13:40 ---------- Previous post was at 12:32 ----------
    Методом тыка определил, что все дело в этой строчке первого правила:
    Код:
    RewriteRule . /index.php [L]
    
    С этой строкой ничего не работает, а если ее удалить, то все нормально. Скажите, на сколько важна эта строка и что она обозначает? Я не силен в mod_rewrite.
     
  2. 3xmaster

    3xmaster

    Регистр.:
    19 июн 2007
    Сообщения:
    552
    Симпатии:
    130
    Ессно, важна :) Объяснить... Если просто - она отвечает за работоспособность ЧПУ и корректную работу блога (именно индекс и разруливает все запросы).

    Простые маны по хтацессу
     
    LodeRunner нравится это.
  3. LodeRunner

    LodeRunner

    Регистр.:
    10 фев 2010
    Сообщения:
    220
    Симпатии:
    12
    Ну а почему эта строка конфликтует с правилом ограничения доступа? У них же ведь нет ничего общего между собой...
    Кто с этим сталкивался? В чем проблема-то кроется?
     
Статус темы:
Закрыта.