• Всем привет!

    Помогите, пожалуйста, разобратсья!

    Когда я включаю в разделе «Настройки — Постоянные ссылки» вид отображения «Название записи http://mysite.com/sample-post/»,
    то в .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

    Собственно, это работает, русские человекопонятные ссылки в том числе.

    .htaccess содержит ещё вот это:

    Options All -Indexes
    ErrorDocument 401 "no"
    ErrorDocument 403 "no"
    ErrorDocument 404 "no"
    ErrorDocument 500 "no"

    Однако, если я захожу на сайт в несуществующую папку, я вместо пустой странички с надписью «no» вижу шаблонную страницу своего сайта, ка которой написано: Ошибка 404.

    Если удалить из .htaccess код, созданный вордпрессом, всё будет работать нормально, при входе по несуществующей ссылке будет «no». Только человекопонятные ссылки работать не будут.

    Вопрос: как их подружить?

    Заранее спасибо )

Просмотр 7 ответов — с 1 по 7 (всего 7)
  • Вопрос: как их подружить?

    Лучше всего создать свой шаблон темы 404.php.

    SeVlad, а как это связано с моим вопросом?

    перенаправление на шаблон точно так же настраивается в .htaccess (Creating_an_Error_404_Page).

    SeVlad, а как это связано с моим вопросом?

    Это как бэ решение задачи.:) Причем корректное решение.

    А что такое
    ErrorDocument 404 "no"
    я не знаю. Я знаю, что ErrorDocument должен указывать на файл. А потому 404.php и будет тем самым (правильным!) файлом, Причём без всяких шаманств и не нужных директив в хтацессе.

    SeVlad, вы ошибаетесь. Судя по вашей ссылке, Errordocument не должен указывать на файл, смотрите пример внимательнее, там написано:
    Alternatively, a message can be provided to be displayed by the browser.
    и дан пример:
    ErrorDocument 403 "Sorry can't allow you access today"

    Если вы ещё не поняли, моя проблема заключена в том, что если в .htaccess одновременно присутствует и код вордпресса, предназначенный для ЧПУ и параметр ErrorDocument, то последний не работает. Не работает так, как буд-то его нет, что бы туда не вписывать, ссылку на что-то ли просто текст.

    Errordocument не должен указывать на файл, смотрите пример внимательнее, там написано:

    И это будет текст на белом фоне (точнее в дефолтных цветах юзерагента). Создав в таком виде 404.php Вы добьётесь точно такого же «эффекта».
    Так понятней о чём я говорю?

    последний не работает.

    А он стоит ДО кода ВП?

    И это будет текст на белом фоне (точнее в дефолтных цветах юзерагента). Создав в таком виде 404.php Вы добьётесь точно такого же «эффекта».
    Так понятней о чём я говорю?

    это понятно, но это не решение проблемы, потому что Errordocument не работает.

    А он стоит ДО кода ВП?

    пробовал и до и после. не работает. Если удалить код ВП, то errordocument работает.

    но это не решение проблемы, потому что Errordocument не работает.

    Нет желания проверять, но я почти уверен, что если вдруг «не работает», то только ответ 404. Могу ошибаться, но по моему все остальные ответы сервера (4хх-5хх) ВП не перехватывает. Потому я предложил (на мой взгляд) это правильное решение надуманной проблемы. (как говорится — Вам шашечки или ехать?)

Просмотр 7 ответов — с 1 по 7 (всего 7)

Тема «errordocuments и permalinks» закрыта для новых ответов.