![]() |
Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community |
|
![]() |
#1 |
Senior Member
|
![]()
Обнаружилась проблема с новым RealURL.
Одинаковый контент выдается как для урлов вида page/ и page.html Раньше это решалось установкой в конфиге acceptHTMLsuffix = 1, но в последних версиях этот параметрв хоть и объявляется и описан в доке, но реально в коде не учитывается. Похоже что "принятие" урлов с .html зашито в коде, так как другие урлы, например .htm выдают 404 ошибку. Попробовал в .htaccess такое решение: Код:
RewriteBase / RewriteRule ^(.*)\.html$ $1/ [R=permanent,L] Что посоветуете? Updated: единственное что пока удалось сделать что бы все работало - поменять print.html на print.htm Последний раз редактировалось dmartynenko; 05.04.2011 в 19:48 |
![]() |
![]() |
![]() |
#2 |
Senior Member
|
![]()
А если этот самый атрибут print транслировать просто в /адрес_страницы/ptint/ ?
|
![]() |
![]() |
![]() |
#3 |
Senior Member
|
![]()
Не получиться в .../print/
Так как RealURL умеет добавлять фиксированные переменные только в начало пути, т.е. /en/... или /print/... Добавить "в самый конец" можно только опцией fileName. Ну, вообщем, для конечного пользователя нет разницы как выглядит урл, можно и так и эдак сделать. Самое главное, что для SEO плохо что page/ и page.html выдают одно и тоже, а это поведение что называется "из коробки". |
![]() |
![]() |
![]() |
#4 |
Senior Member
|
![]()
Так на самом деле вполне будет логично выглядеть url типа domain.tld/print/page/id/ - и совершенно точно он не будет отзываться ни на какие *.html
Хотя, насколько я помню при использовании .htaccess в мануале к RealURL был комментарий к какой-то строке "при использовании такой настройки filename работать правильно не будут" (это вольный перевод - передача общего смысла фразы). Можеть быть дело в этом? Потому что у меня работает вроде как вполне адекватно все и при использовании .html и без него. |
![]() |
![]() |
![]() |
#5 | |
Senior Member
|
![]() Цитата:
РЕШЕНИЕ! Все оказалось просто, но не очевидно. В новой версии проверка наличия суффикса делается вот так: PHP код:
Причем этот конфиг предлагается по умолчанию как в примерах, так и в autoconf, вот кусок из class.tx_realurl_autoconfgen.php PHP код:
PS: Скорее это просто баг, на это указывает то что при генерации этот параметр учитывается простой проверкой, а не isset() PHP код:
|
|
![]() |
![]() |
![]() |
#6 |
Senior Member
|
![]()
Скорее надо выставить acceptHTMLsuffix в 0 - тогда RealURL не будет его воспринимать как еще один вариант именования страницы. Насколько помню это сделано для упрощения миграции со статичных сайтов на динамические.
|
![]() |
![]() |
![]() |
#7 |
Senior Member
|
![]()
Может быть ту информацию, которую я излагал выше сложно целиком воспринять.
Но еще раз повторю то, что уже писал - acceptHTMLsuffix в последних версиях RealURL не используется и не учитывается нигде. |
![]() |
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подскажите как правильней сделать | Владимир Умнов | Общие вопросы | 2 | 12.10.2005 11:44 |