Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Как сделать мягкие ссылки


Автор: kulikoff 11.3.2011, 16:48
Возникла следующая проблема: есть картинка на хосте. Имя у неё неудобочитаемое, вида skougyfsiughqwoitgfqwe.jpg Изменить его нельзя. Как можно сделать так, чтоб файл не переименовывался, но из скрипта php к нему можно было обратиться по приемлимому для гугла имени, скажем, philips_4234.jpg ? Насколько я понимаю, это относится к мягким и жестким ссылкам, но никогда с ними не работал, может кто поможет решить проблему?

Автор: ksnk 11.3.2011, 17:19
kulikoff, Таблица {url:string128 KEY, realurl:string128 INDEX }
по прилетевшему имени ищем реальное имя и дальше именно его пускаем на вход основного контролера. При небольшом количестве ссылок и правильной расстановки индексов - очень быстрая операция поиска.

+ к админке прикрутить сервис переименования ссылок, чтобы юзер сам мог называть свои ссылки более естественными словами.

-- польза 
- никакой привязки к внутренней структуре данных сайта нет. +10 к переносимости сайта на другую платформу.
- полная свобода в наименовании ссылок на сайте.

-- вожможно, не польза
- каждую ссылку нужно мастерить вручную. Хотя можно прикрутить какую-то простую транслитерацию заголовка статьи (как в dklab'е)
- потенциальная возможность несколько разных ссылок на одну и ту-же информацию, хотя это , возможно, не одобряется SEOшниками, так что нужно смотреть...

Добавлено через 3 минуты и 46 секунд
Правда для картинок этот сервис не особенно подходит. Все-таки картинки лучше отдавать сервером, а не PHP'ой...
Жесткие ссылки , возможно, помогут?

Автор: skyboy 11.3.2011, 17:56
Цитата(ksnk @  11.3.2011,  16:19 Найти цитируемый пост)
 Все-таки картинки лучше отдавать сервером, а не PHP'ой...

я уже задолбался про X-SendFile писать.

Автор: gta4kv 11.3.2011, 18:08
Цитата

я уже задолбался про X-SendFile писать. 

Я задолбался после твоего совета решать проблемы с mod_rewrite smile

Автор: NewDima 13.3.2011, 15:08
kulikoff, почему нельзя изменить это имя?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)