Я хочу 301 перенаправить весь сайт, но исключить все в папке с именем / uploads
, которая существует в каталоге / root
.
Я нагуглил для этого, но ничего не придумал, или я не думал, что то, что я видел, было правильным.
Можем ли мы это взломать? ?
Попробуйте это правило mod_rewrite :
RewriteEngine on
RewriteRule !^uploads($|/) http://example.com%{REQUEST_URI} [L,R=301]
Это правило соответствует любому пути URL, который не начинается с / uploads
] или / uploads /
(ведущий /
в шаблоне отсутствует из-за удаления префикса пути при использовании в файлах .htaccess) и перенаправляет запрос на соответствующий путь в example.com .
Думаю, вам нужно следующее:
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/uploads/
RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]
Если вы получите 500 Internal Error
, то дважды проверьте, есть ли у вас пробел между } и ! во второй строке.