За последние 24 часа нас посетили 19444 программиста и 1650 роботов. Сейчас ищут 1817 программистов ...

Переадресация ErrorDocument учитывая адрес сайта

Тема в разделе "Регулярные выражения", создана пользователем danya_nyjniy, 21 мар 2011.

  1. danya_nyjniy

    danya_nyjniy Активный пользователь

    С нами с:
    18 дек 2010
    Сообщения:
    19
    Симпатии:
    0
    Здравствуйте! У меня такая проблема: к моему сайту можно обращаться с помощью 2-х адресов это: www.вася.ru и www.vasya.ru проблема в том что если я нахожусь на www.вася.ru и вызываю ошибку 404 то он у меня переадресует на www.vasya.ru/error.php?404 так как в файле .htaccess прописано:

    ErrorDocument 404 http://www.vasya.ru/error.php?404

    так вот...мне нужно как-то сделать чтобы он оставался на том адресе по которому вызвали ошибку. То есть если я вызываю ошибку на www.vasya.ru то он долже выдать http://www.vasya.ru/error.php?404 а если по www.вася.ru то он должен выдать http://www.вася.ru/error.php?404

    Как это можно сделать подскажите пожалуйсто.
     
  2. Shumomer

    Shumomer Активный пользователь

    С нами с:
    12 мар 2011
    Сообщения:
    194
    Симпатии:
    1
    Адрес:
    из вашего вображения
    ErrorDocument 404 /error.php?404
     
  3. danya_nyjniy

    danya_nyjniy Активный пользователь

    С нами с:
    18 дек 2010
    Сообщения:
    19
    Симпатии:
    0
    так не получается то есть он показывает страницу с ошибкой но в адресной строке не http://www.vasya.ru/error.php?404 а тот адрес с которой была вызвана эта ошибка
     
  4. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    danya_nyjniy
    ErrorDocument - это ОБРАБОТЧИК.
    Запрос попадает Апачу, он, пересмотрев все правила, алиасы и т.д., не находит страницы, но видит директиву ErrorDocument. Следуя этой директиве он находит соответствующий файл (или текст!) и передаёт ему управление вместо ненайденного файла.

    Понял? Ты получаеш управление в том файле, который указал.
    Хочешь редиректить? Редиректи, для этого можно использовать JavaScript, PHP или обычный HTML (meta).
    Это уже задача файла, которому Апач передал управление.
     
  5. danya_nyjniy

    danya_nyjniy Активный пользователь

    С нами с:
    18 дек 2010
    Сообщения:
    19
    Симпатии:
    0
    нет просто я хочу сразу в файле .htaccess определять на какой адрес делать редирект

    что-то типо вот так сделать:

    Код (Text):
    1.  
    2. ErrorDocument 404 {HTTP_HOST}/error.php?404