перенаправления htaccess и ExpressionEngine

Я только что запустил новую версию сайта, мы перенесли их из статических файлов в ExpressionEngine.

Я использую одобренный Эллисом метод htaccess для удаления index.php из URL-адресов, но мне также нужно перенаправить некоторые URL-адреса со старого сайта, и я получаю артефакты (из-за отсутствия лучшего термина) в перенаправленном URL-адреса.

Например, у меня есть это перенаправление:

RedirectMatch 301 /2013/atlanta/ /event/atlanta-2013

Который на самом деле заканчивает тем, что отправляет вас сюда:

http://aneventapart.com/event/atlanta-2013?/2013/atlanta/

К счастью, страница по-прежнему загружается правильно, но я бы предпочел, чтобы там не было этой строки запроса.

Вот фрагмент, который удаляет index.php из URL-адресов ExpressionEngine:

RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1 [L]

Любая помощь?


person Tim    schedule 01.12.2012    source источник
comment
Обратите внимание, что вы можете публиковать будущие вопросы по EE на бета-сайте: expressionengine.stackexchange.com   -  person Anna_MediaGirl    schedule 05.12.2012


Ответы (2)



Если вы не пытаетесь сопоставить подстраницы ниже: /2013/atlanta/something/, например, я бы рекомендовал следующее

Redirect 301 /2013/atlanta/ http://aneventapart.com/event/atlanta-2013/

Так что сделайте URI с полным URL-адресом, это удалит базовую последовательную цепочку URI в конце, который вы видите.

Кстати, можно ли это перенести на общедоступный бета-сайт expressionengine.stackexchange.com?

person Nevin Lyne    schedule 04.12.2012