2010-12-14 4 views
0

Я создаю электронный магазин в греческом, и я столкнулся с важной проблемой, касающейся имен файлов изображений, которые пользователи загружают на сервер linux. Если имя файла содержит греческие символы, тогда файл загружается нормально, но изображения не отображаются в браузере. Нам важно, чтобы имена файлов в греческом формате поддерживались, поскольку мы рассчитываем на поиск в греческом языке как для веб-сайтов, так и для изображений в Google.Показать изображения с греческими именами

+0

Я даже не знаю с чего начать. В частности, поскольку вы нам ничего не дали. –

+0

Когда вы используете POST для изображения, вы имеете в виду, что изображение не возвращается обратно в браузер? – Cratylus

+0

@casperOne Глупый вопрос, но почему вы редактировали этот двухлетний вопрос? –

ответ

0

Почему они не отображаются? У вас есть пример?

Я думаю, ваши варианты зависят от того, как изображения хранятся и обслуживаются пользователями. Одна вещь, которую вы могли бы сделать, чтобы сохранить греческий текст на странице результатов поиска, может состоять в том, чтобы обслуживать файлы с негреческим именем и записывать греческую часть в тег изображения alt.

Это, однако, предполагает, что вы храните файлы изображений в сочетании с какой-либо базой данных, которая будет содержать необходимые метаданные. В принципе, при загрузке метаданные изображения (alt текст, возможно, тип mime, что-то еще важное) будут записаны в запись в таблице базы данных, а затем сам файл изображения может быть сохранен в файловой системе. Фактическое имя файла может быть только первичным ключом из таблицы, который может быть просто полем автоматического увеличения.

+0

только что наткнулся на этот старый вопрос, и ваш вопрос заставил меня задаться вопросом, почему сохранить изображение на db как капли? Следует ли избегать дублирования всех метаданных? Не было бы безопаснее/легче контролировать, если бы это было на дБ? Хотя сложнее визуально осмотреть с первого взгляда, очевидно ... – Alex

+0

@Alex: Это вековой вопрос, который не имеет определенного ответа. Я склонен думать, что если вы храните/обслуживаете файлы, используйте инструменты, предназначенные для этой цели ... файловую систему и веб-сервер. И пусть реляционная база данных отслеживает реляционные данные. Конечно, можно хранить файлы в базе данных, и многие приложения делают это. Это не мое предпочтение, но иногда это имеет смысл в зависимости от других факторов и требований к программному обеспечению. – David

+0

Старое «это зависит» снова поднимает голову :) Но это правда, конечно - когда у вас так много инструментов в вашем распоряжении, вряд ли когда-либо будет конкретное право и неправильно. Хорошая точка в использовании файловой системы и db для того, для чего они предназначены. – Alex

1

Возможно, это из-за проблемы с именем сервера charset? Пока ваше имя файла находится в греческом сервер перевести его на что-то вроде Αήι;;'.jpg and you have to img src Αήι ;; ΄'.jpg

Смежные вопросы