Anna Опубликовано 18 Апреля 2005 Жалоба Поделиться Опубликовано 18 Апреля 2005 Помогите пожалуйста сделать такой htaccess, чтобы через RewriteRule реализовать следующую переадресацию.Все файлы с расширением .htm надо переадресовать на файлы с теми же именами, но только расширениями .php . Примеры:abc.htm -> abc.phpdef.htm -> def.php В документации по данной директиве ничего похожего не нашла.Спасибо![1113838531:1113908615]Помогите пожалуйста. Неужели никто с таким не сталкивался? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Alina Опубликовано 20 Апреля 2005 Жалоба Поделиться Опубликовано 20 Апреля 2005 Не очень простое это дело. У разных хостеров работает по-разному. Например, так: RewriteBase /RewriteEngine On RewriteCond %{REQUEST_URI} !\/(.*).phpRewriteCond %{REQUEST_URI} !\.(jpg|gif|png|css)$RewriteRule ^/(.*).htm$ $1.php [L] Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Valera Опубликовано 20 Апреля 2005 Жалоба Поделиться Опубликовано 20 Апреля 2005 Будьте проще и к вам потянутся!!! RedirectMatch permanent (.*).htm$ http://ВАШ_СAЙТ:$1.php Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Alina Опубликовано 20 Апреля 2005 Жалоба Поделиться Опубликовано 20 Апреля 2005 Фиг знает почему, но на моем хостинге это не работало... Хотя вы правы насчет проще, в данной ситуации первые два RewriteCond можно и опустить... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Anna Опубликовано 21 Апреля 2005 Автор Жалоба Поделиться Опубликовано 21 Апреля 2005 RewriteBase /RewriteEngine OnRewriteRule ^/(.*).htm$ $1.php [L] Не заработало вообще. Сделала вот так: RedirectMatch permanent (.*).htm$ http://mysite.com$1.php Двоеточие перед $1.php оказалось лишним.Спасибо большое! Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
ImUgh Опубликовано 21 Апреля 2005 Жалоба Поделиться Опубликовано 21 Апреля 2005 Будьте проще и к вам потянутся!!! RedirectMatch permanent (.*).htm$ http://ВАШ_СAЙТ:$1.php<{POST_SNAPBACK}>Но ведь Redirect будет пересылать клента на новый УРЛ (соответствнно потребуется новый запрос к серверу), а если использовать ModRewrite - то все будет в рамках одного запроса.Хотя для автора вопроса это может быть и не важно Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Valera Опубликовано 21 Апреля 2005 Жалоба Поделиться Опубликовано 21 Апреля 2005 ModRewrite, есть не на каждом хостинге, поэтому не везде его можно заюзать... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Anna Опубликовано 22 Апреля 2005 Автор Жалоба Поделиться Опубликовано 22 Апреля 2005 Но ведь Redirect будет пересылать клента на новый УРЛ (соответствнно потребуется новый запрос к серверу), а если использовать ModRewrite - то все будет в рамках одного запроса.Хотя для автора вопроса это может быть и не важно <{POST_SNAPBACK}> Ну вообще-то важно конечно, но если RewriteRule у меня не работает, то выбирать не приходится Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Alina Опубликовано 22 Апреля 2005 Жалоба Поделиться Опубликовано 22 Апреля 2005 Ну вообще-то важно конечно, но если RewriteRule у меня не работает, то выбирать не приходится <{POST_SNAPBACK}> Анна, там еще иногда мешается слэш перед скобкой. То есть, возможно, надо было так:RewriteRule ^(.*).htm$ $1.php [L] Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.