Ответы пользователя по тегу htaccess
  • Как правильно настроить подмену в .htaccess?

    SynCap
    @SynCap
    Делаю интернет с 1998 года
    В RewriteRule уберите $, как минимум. Или регэксп переписать по-другому:
    RewriteRule ^\%D0\%B4\%D0\%B8\%D0\%B7\%D0\%B0\%D0\%B9\%D0\%BD-\%D0\%BB\%D0\%BE\%D0\%B3\%D0\%BE\%D1\%82\%D0\%B8\%D0\%BF(/?.*)$ \%D0\%B4\%D0\%B8\%D0\%B7\%D0\%B0\%D0\%B9\%D0\%BD/\%D0\%BB\%D0\%BE\%D0\%B3\%D0\%BE\%D1\%82\%D0\%B8\%D0\%BF$1

    Обязательно нужно заэкранить %, вот так: \%, или даже вот так: \\%. Был случай, когда пришлось ставить аж 4 бэкслэша! Дело в том, что символ % в RewriteRule имеет собственное значение.
    Прямой зависимости количества слэшей от версии Апача я не обнаружил, видимо зависит от версии библиотеки по работе с регекспами, с которой конкретная сборка компилируется. Особенно актуально для LINUX систем, где Апач собирается "на месте" или готовится "умельцами" для покладки в репозитории.
    Если Апач настроен на дефолтный utf-8, и версия не ниже 2.2.1, и файл .htaccess сохранен в utf-8, то правило можно записать и так:
    RewriteRule ^дизайн/логотип(/?.*)$ дизайн-логотип$1

    Или так:
    RewriteRule ^дизайн/логотип дизайн-логотип

    Подробнее: httpd.apache.org/docs/2.4/en/rewrite/intro.html
    Ответ написан
    Комментировать