Mesuti
@Mesuti

Как сделать редирект обращения к файлу?

Привет!
как сделать редирект обращения к файлу?
Например есть ссылка site.ru/file.rar
При обращении должен загружаться из site.ru/disk/file.rar
  • Вопрос задан
  • 30 просмотров
Пригласить эксперта
Ответы на вопрос 1
shambler81
@shambler81 Куратор тега htaccess
RewriteCond %{REQUEST_URI} !\.(css|js|jpg|gif|png)$ - маска файлов
RewriteCond %{REQUEST_FILENAME} -f без маски это просто файл
RewriteCond %{REQUEST_FILENAME} robots.txt$ -конкретный файл

Ваше правило
RewriteCond %{HTTP_HOST} !^www\.site\.com
RewriteCond %{REQUEST_FILENAME} file.rar$
RewriteRule ^/(.+\..+)$ /disk/$1? [L,R=301]

или
RewriteCond %{HTTP_HOST} !^www\.site\.com
RewriteCond %{REQUEST_FILENAME} -f   
RewriteRule ^/(.+\..+)$ /disk/$1? [L,R=301]


и тому подобное

Дайте больше вариантов сделюем покрасивее регулярку, только ли в корне файлы, любые ли файлы нужно пенераправлять на диск, а что со вложенными в другие директории и тд.

PS
^/(.+\..+)$ /disk/$1?
^ начало строки
*(....) - то что станет потом первой группой $1
.+ - то же самое что и .* толко не от 0 символов а от 1
\экранирование символа ( то есть сам символ а не то что он означает в регулярке.
? в конце - удалит гет параметры если они есть.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы