подмена html

Тема в разделе "Mod Rewrite / htaccess / ЧПУ", создана пользователем @sms, 27 июл 2009.

Статус темы:
Закрыта.
  1. @sms

    @sms blog.4ua.info -SEO

    Регистр.:
    20 окт 2006
    Сообщения:
    413
    Симпатии:
    90
    помогите советом

    идут запросы вида 10cd.ru/12_65.html и тд вида 10cd.ru/**.html
    как сделать подмену выдачи что б по всем запросам к файлам (php & html)выдавалась страница к примеру 10cd.ru/readme.html

    запрос вида
    Код:
    <IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule ^.htaccess$ - [F]
    RewriteRule ^(.*)(_)([0-9]{10})_([0-9]{1,})\.html$ http://10cd.ru/readme.html
    RewriteRule ^(.*).php(/?)+$  http://10cd.ru/readme.html [L]
    </IfModule>
    
    не выходит, т.е редиректит, а мне необходимо что б в адресной строке оставался путь запроса.
    спасибо
     
  2. ask0n

    ask0n

    Регистр.:
    9 июн 2009
    Сообщения:
    227
    Симпатии:
    63
    Попробуй так:
    Код:
    RewriteEngine on
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ ./readme.html [L]
    
    Т.к. файлы у тебя реально существуют, то RewriteCond %{REQUEST_FILENAME} !-f тебе не надо, иначе не будет перезаписывать.
    http:// не указывай, тогда и редиректа не будет по идее.
     
  3. @sms

    @sms blog.4ua.info -SEO

    Регистр.:
    20 окт 2006
    Сообщения:
    413
    Симпатии:
    90
    так выдает
    Внутренняя ошибка сервера (500)

    возможно так

    RewriteEngine on
    RewriteBase /
    RewriteRule ^(.*).html$ readme.html
     
  4. ask0n

    ask0n

    Регистр.:
    9 июн 2009
    Сообщения:
    227
    Симпатии:
    63
    А в error логе что пишет по этому поводу?
    Вот конфиг с одного из серваков рабочий:

    Код:
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ ./index.php
    
    Т.е. любой запрос на несуществующий файл отправляем на index.php, в строке броузера остается сделанный запрос...
    Просто в твоем случае, если файлы реально существуюют, эти правила их не перезапишут.
     
  5. @sms

    @sms blog.4ua.info -SEO

    Регистр.:
    20 окт 2006
    Сообщения:
    413
    Симпатии:
    90
    спасибо заработало данное правило.
    в том то и дело что файлы не существовали!
     
  6. andrnag

    andrnag

    Регистр.:
    26 мар 2008
    Сообщения:
    350
    Симпатии:
    125
    Адрес в строке браузера меняется когда происходит Внешний редирект. А он происходит тогда, когда либо явно задан флагом R, либо когда редирект происходит на полный урл типа Перейти по ссылке даже если это тот же сайт. Т.е. просто нужно убрать имя сервера.

    В остальных случаях, редирект Внутренний, и адрес в строке не меняется.
     
  7. @sms

    @sms blog.4ua.info -SEO

    Регистр.:
    20 окт 2006
    Сообщения:
    413
    Симпатии:
    90
    всем спасибо,
    тему можно закрывать!
     
Статус темы:
Закрыта.