Использование .htaccess для удаления группы шаблонов и части URI страницы в EE 2?

С тех пор, как я впервые столкнулся с этой проблемой, она несколько расширилась, так как оказалось, что это также влияет на перезапись URI страниц. Таким образом, я переписал свой оригинальный пост, чтобы отразить это.

Недавно я обновил свой сайт с EE 1 до EE 2, и, похоже, это привело к тому, что некоторые из моих переписей .htacess для изменения структуры URL больше не работают.

Моя исходная установка была такой:

RewriteRule ^/?((403|404|About|Chat|Contact|Copyright|Search)(/.*)?)$ /Westeros/$1 [L]
RewriteRule ^/?((ASoIaF|Digest|Images|Login|Store|Updates|Westeros|member)(/.*)?)$ /index.php/$1 [L]

Я также пробовал это:

RewriteRule ^/?((403|404|About|Chat|Contact|Copyright|Search)(/.*)?)$ /index.php/Westeros/$1 [L]
RewriteRule ^/?((ASoIaF|Digest|Images|Login|Store|Updates|member)(/.*)?)$ /index.php/$1 [L]

В обоих этих сценариях происходит несколько разных вещей, и некоторые из них работают, а некоторые нет.

1) http://www.westeros.org/Updates/ работает нормально. Обновления — это группа шаблонов. 2) http://www.westeros.org/Search/ не работает. Поиск — это шаблон в группе шаблонов Вестероса. Он работает, чтобы получить к нему доступ как http://www.westeros.org/index.php/Westeros/Search/. 3) http://www.westeros.org/About/ не работает. About — это страница с URI, установленным на /Westeros/About/. Он работает, чтобы получить к нему доступ как http://www.westeros.org/index.php/Westeros/About/.

Я предполагаю, что между EE 1 и EE 2 произошли некоторые внутренние изменения в обработке URL-адресов, но я не совсем понимаю, как это могло предотвратить эти перезаписи. Разве переписывание не является первым, что делается, поэтому разве EE не должен видеть переписанные URL-адреса и ничего больше? Я протестировал с http://htaccess.madewithlove.be/, и .htaccess правильно переписывает URL-адреса. Но EE, кажется, просто не признает этого.

Однако, судя по предложению, размещенному в комментарии, использовать метод, предоставленный Pixel & Tonic, запись группы шаблонов все еще работает в EE 2. Я просто не могу понять, почему моя установка не работает, если он работает, я также не могу понять, как приспособить его пример к моей ситуации.


person Linda Antonsson    schedule 13.11.2012    source источник
comment
К вашему сведению: сайт SE, ориентированный на EE, сейчас находится в общедоступной бета-версии, если вы хотите публиковать там будущие вопросы по EE: expressionengine.stackexchange.com   -  person Anna_MediaGirl    schedule 28.11.2012


Ответы (1)


Я сам использовал образец Брэндона для EE2: http://pixelandtonic.com/blog/making-pt-structure

person lealea    schedule 14.11.2012
comment
О, интересно, спасибо! Мне придется поэкспериментировать с этим. :) Я не совсем хорошо разбираюсь в .htaccess, но, может быть, я смогу понять, что отличается от моего подхода, и поработаю над этим. - person Linda Antonsson; 15.11.2012
comment
У меня наконец-то появилась возможность изучить его пример, и я не совсем его понимаю. Я не уверен, почему он включает index.php в начале инструкции, когда входящие URL-адреса не будут иметь его? Я смотрю на этот пример: RewriteRule ^index.php/(playa|wygwam|fieldframe|ffmatrix)(/[^\/]+)?(/.+)?$ /index.php/ee$2/$1/$3 [НЗ, Л] - person Linda Antonsson; 20.11.2012