Ответы пользователя по тегу Яндекс
  • Стоит ли делать перенаправление без слеша?

    @yanakey
    Если выберите вариант URL без trailing-слеша,
    нужно будет отключить слеши для директорий - DirectorySlash Off,
    иначе получите circular redirect при обращении к ним
    ("page isn't redirecting properly").

    При DirectorySlash Off опция DirectoryIndex внутри директорий игнорируется,
    нужно будет добавить правила mod_rewrite уровнем выше для исправления.

    При этом, внутри директорий использовать mod_rewite не получится,
    правила нужно будет перенести уровнем выше.

    #
    RewriteRule ^mydir$ /mydir/index.php [L,E=MYVAR:1]
    RewriteCond %{ENV:REDIRECT_MYVAR} !1
    RewriteRule ^mydir/$ /mydir [R=301,L]
    
    #
    RewriteCond %{REQUEST_URI} ^/mydir
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ /mydir/myapp.php [L,QSA]


    404 отдавать не стоит, достаточно 301 для ботов от дублей.
    Ответ написан
    Комментировать