Как сделать редирект без изменения адреса url?

Сейчас содержимое файла .htaccess выглядит так:
AddDefaultCharset windows-1251

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . index.php


Как должен полностью выглядеть .htaccess файл, чтоб соблюдались следующие правила:
- при заходе на страницы mysite.com происходил редирект на www.mysite.com
- при вводе страниц mysite.com/products, mysite.com/photos происходил редирект на www.mysite.com/products и www.mysite.com/photos, при этом отображалось бы то же самое, что и на странице www.mysite.com (только эти 2 варианта products и photos)
- после срабатывания этих правил не отвалились ajax-запросы типа www.mysite.com/server/query.php
- после срабатывания этих правил не перестали открываться страницы типа www.mysite.com/somefolder, где в папке somefolder лежит файл index.php
  • Вопрос задан
  • 1311 просмотров
Пригласить эксперта
Ответы на вопрос 1
shambler81
@shambler81 Куратор тега htaccess
RewriteEngine On
RewriteBase /
Options +FollowSymLinks
RewriteCond %{HTTP_HOST} !^www\.(.*) [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

RewriteCond %{HTTP_HOST} !^www\.(.*) [NC]
RewriteRule ^products$ http://www.%{HTTP_HOST}/products [R=301,L]

RewriteCond %{HTTP_HOST} !^www\.(.*) [NC]
RewriteRule ^photos$ http://www.%{HTTP_HOST}/photos[R=301,L]

Теперь как впихнуть невпихуемое.
ты хочешь поменять урл но не менять его и наоборот что вообще-то туповато.
Но тем не менее подмену файлов можно сделать, притом не трогая движок сайта вообще.
Но это можно сделать в nginx в режиме прокси. в таком случае он будет физически подменять папки но урлы при этом меняться не будут.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы