".../photo.jpg?s=1" => ".../img.php?s=1&img=photo.jpg"
Вот что должно получиться:
Ссылка с файла перенаправляется на скрипт, который модифицирует файл.
Было бы очень желтаельно, если бы адрес в строке не менялся, как вы могли догадаться скрипт вернет новое изображение.
Написать скрипт, настроить кэширование и т.п. я смогу, а вот по настройкам серверной части у меня пробел в знаниях. Как это можно сделать?
Буду рад за помощь и неоценимый опыт. Спасибо!
Спустя 24 минуты, 29 секунд (10.05.2012 - 16:26) Игорь_Vasinsky написал(а):
)) а чё так мудрить то???
работаешь с GET
ссылка вида
http://site.ru/index.php?img=2
или
http://site.ru/index.php?img=name.ext
Считываешь , указываешь путь + имя файла и модифицируешь его.
первый вариант - если допустим ты в БД хранишь ID | image | path или ID | pathto/image
работаешь с GET
ссылка вида
http://site.ru/index.php?img=2
или
http://site.ru/index.php?img=name.ext
Считываешь , указываешь путь + имя файла и модифицируешь его.
первый вариант - если допустим ты в БД хранишь ID | image | path или ID | pathto/image
Спустя 14 минут, 45 секунд (10.05.2012 - 16:41) Artemeey написал(а):
Цитата (Игорь_Vasinsky @ 10.05.2012 - 12:26) |
)) а чё так мудрить то??? работаешь с GET ссылка вида http://site.ru/index.php?img=2 или http://site.ru/index.php?img=name.ext Считываешь , указываешь путь + имя файла и модифицируешь его. первый вариант - если допустим ты в БД хранишь ID | image | path или ID | pathto/image |
Ссылка должна указываться только на физически существующую кратинку:
"/images/photo.jpg"
Если добавлен модификатор (через GET):
"/images/photo.jpg?w=100&h=200"
Должен срабатывать скрипт и уменьшать ее. Цель - написть правило перенаправления на этот скрипт. Все).
Спустя 2 минуты, 52 секунды (10.05.2012 - 16:44) Faantoom написал(а):
Всем доброго времени суток.
Тоже есть вопросик по перенаправлениям (в частности mod_rewrite), так как смысл этой темы похожий, не буду создавать отдельную, спрошу тут.
Какое правило в htaccess использовать, чтобы происходило вот такое перенаправление с субдомена:
fs123.site.com/путь => site.com/getfile.php?fs=123&path=/путь
заранее огромное спасибо
Тоже есть вопросик по перенаправлениям (в частности mod_rewrite), так как смысл этой темы похожий, не буду создавать отдельную, спрошу тут.
Какое правило в htaccess использовать, чтобы происходило вот такое перенаправление с субдомена:
fs123.site.com/путь => site.com/getfile.php?fs=123&path=/путь
заранее огромное спасибо
Спустя 52 секунды (10.05.2012 - 16:45) Игорь_Vasinsky написал(а):
ну и в чём проблема??? передавай либо имя картинки, либо имя и расширение, считывай всё это и доп параметры и запускай свой ресайз...
правила здесь можешь выстроить
http://www.generateit.net/mod-rewrite/
правила здесь можешь выстроить
http://www.generateit.net/mod-rewrite/
Спустя 1 минута, 3 секунды (10.05.2012 - 16:46) Игорь_Vasinsky написал(а):
Цитата |
fs123.site.com/путь => site.com/getfile.php?fs=123&path=/путь |
header("Location: ...");:lol: чем не подходит?
Спустя 2 минуты, 38 секунд (10.05.2012 - 16:49) Faantoom написал(а):
Цитата (Игорь_Vasinsky @ 10.05.2012 - 12:46) |
header("Location: ...");:lol: чем не подходит? |
Имеется ввиду не явное перенаправление, чтобы пользователю был виден первый адрес
Спустя 1 минута, 55 секунд (10.05.2012 - 16:50) Artemeey написал(а):
Цитата (Игорь_Vasinsky @ 10.05.2012 - 12:45) |
ну и в чём проблема??? передавай либо имя картинки, либо имя и расширение, считывай всё это и доп параметры и запускай свой ресайз... правила здесь можешь выстроить http://www.generateit.net/mod-rewrite/ |
Ну смотри.
Я написал перенапрвление:
RedirectMatch (.*)/(.*)\.(jpg)$ /admin/mod/resize.php?file_url=$1/$2.$3&w=$4&h=$5
Не хватает $4 и $5. Как их получить?
Это не работает:
RedirectMatch (.*)/(.*)\.(jpg)\?w=(\d)&h=(\d)$ /admin/mod/resize.php?file_url=$1/$2.$3&w=$4&h=$5
P.S. Ссылка твоя не по теме. Мне необходимо перенаправление только через настройки сервера! Тоесть скрипт который получает гет параметры, а потом перенаправляет не прокатит. Это плохой подход.
Спустя 2 минуты, 26 секунд (10.05.2012 - 16:53) Игорь_Vasinsky написал(а):
Цитата |
Нужно настроить перенаправление .htaccess |
ну дружище)))) для апача это делается только через mod rewrite. - а я те дал линк на генератор, раз ты не можешь регулярки победить сам.
Цитата |
Имеется ввиду не явное перенаправление, чтобы пользователю был виден первый адрес |
iframe
Спустя 3 минуты, 54 секунды (10.05.2012 - 16:57) Faantoom написал(а):
По изначальной теме топика.
Цитата |
Я написал перенапрвление: RedirectMatch (.*)/(.*)\.(jpg)$ /admin/mod/resize.php?file_url=$1/$2.$3&w=$4&h=$5 Не хватает $4 и $5. Как их получить? |
Не уверен, но попробуйте вот так:
RewriteRule (.*)/(.*)\.(jpg)$ /admin/mod/resize.php?file_url=$1/$2.$3 [L,QSA]
Спустя 7 минут, 55 секунд (10.05.2012 - 17:05) Artemeey написал(а):
Цитата (Faantoom @ 10.05.2012 - 12:44) |
Всем доброго времени суток. Тоже есть вопросик по перенаправлениям (в частности mod_rewrite), так как смысл этой темы похожий, не буду создавать отдельную, спрошу тут. Какое правило в htaccess использовать, чтобы происходило вот такое перенаправление с субдомена: fs123.site.com/путь => site.com/getfile.php?fs=123&path=/путь заранее огромное спасибо |
Это точно работать будет (без числа поддомена)
RedirectMatch (.*)$ http://site.com/getfile.php?fs=123\&file=&
Вот это проверить нет возможности:
RedirectMatch fs(\d+).site.com/$ http://site.com/getfile.php?fs=$1\&file=&
Так как я правил htaccess не знаю, вохможно это не верно(.
Но логика такая.
Спустя 2 минуты (10.05.2012 - 17:07) Artemeey написал(а):
Цитата (Игорь_Vasinsky @ 10.05.2012 - 12:53) | ||
ну дружище)))) для апача это делается только через mod rewrite. - а я те дал линк на генератор, раз ты не можешь регулярки победить сам. |
Нет мне как раз нужно разобраться с регулярками, если ни чего мне не подскажут, надеюсь скоро сам опубликую ответ.
Спустя 26 минут, 19 секунд (10.05.2012 - 17:33) Faantoom написал(а):
Со своей задачей справился =) может кому пригодится, сделал вот так)
RewriteCond %{HTTP_HOST} ^fs([0-9]+)\.* [NC]
RewriteCond %{REQUEST_URI} !^/system/getfile.php$ [NC]
RewriteRule ^(.*)$ /system/getfile.php?fs=%1&path=$0
Спустя 53 минуты, 52 секунды (10.05.2012 - 18:27) Artemeey написал(а):
Разобрался.
Вот что нужно, чтобы рисунки отображались как обычно, но если им передать GET параметры проходили фильтр.
Эту строчку RewriteBase /admin/ необходимо поменять в зависимости от структуры системы. У меня тут находится отдельная система отдельно от сайта. Собственно в папке "admin" и лежит этот файл .htaccess.
Вот что нужно, чтобы рисунки отображались как обычно, но если им передать GET параметры проходили фильтр.
RewriteEngine on
RewriteBase /admin/
RewriteCond %{QUERY_STRING} !^$
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule .*\.(jpe?g|bmp|gif|png)$ loader/getProcessImage.php?file_url=$0&%0
Эту строчку RewriteBase /admin/ необходимо поменять в зависимости от структуры системы. У меня тут находится отдельная система отдельно от сайта. Собственно в папке "admin" и лежит этот файл .htaccess.