У меня есть набор изображений, которые мне нужны другие для просмотра через веб-браузер в значительной степени тем же способом как Галерея Apache.
Я смог бы вывести все свои изображения в каталоге так, чтобы пользователи, совершающие нападки:
видел бы маленькие миниатюры, и выбирание изображения загрузит его полный размер на странице с опциями просмотреть предыдущее или следующее изображение.
Я ищу не решение для Apache, во многом как замечательный Python простой http сервер, который может быть запущен где угодно с минимальной конфигурацией и суетой, например.
python -m SimpleHTTPServer 8000
На самом деле решение для Python выше, в значительной степени хотят, я хочу кроме него, не делает миниатюры изображения, но просто простой список каталогов.
Счастливый использовать приложение, записанное в любом общем языке, пока это сам содержавшее и может работать на Linux на пользовательском порте (и повторить, не модуль Apache).
ОБНОВЛЕНИЕ
Я просто нашел сценарий Python названным куратором, который прост работать. Это генерирует необходимые ползунки и статический HTML из любых изображений в каталоге, на который Вы указываете на него, после которого можно использовать SimpleHttpServer для продавания результатов.
Спасибо за ответы и комментарии. Решение, которое я в итоге использовал, соответствовало моему обновлению:
куратора
в каталоге, содержащем все мои изображения. Это генерирует превью и индексную страницу, а также разбивает на страницы все полноразмерные изображения. * python -m SimpleHTTPServer 8000 *
» в этом каталоге, чтобы просмотреть результирующий HTML-код, сгенерированный куратором. Итак, это простой двухэтапный процесс, который в значительной степени удовлетворяет мои первоначальные требования.
Хотя он не использует класс SimpleHTTPServer, этот сценарий cgi-bin показывает, как очень просто отображать изображения. Расширьте его, чтобы он соответствовал вашим потребностям. Источник здесь.
from os import listdir
from random import choice
ext2conttype = {"jpg": "image/jpeg",
"jpeg": "image/jpeg",
"png": "image/png",
"gif": "image/gif"}
def content_type(filename):
return ext2conttype[filename[filename.rfind(".")+1:].lower()]
def isimage(filename):
"""true if the filename's extension is in the content-type lookup"""
filename = filename.lower()
return filename[filename.rfind(".")+1:] in ext2conttype
def random_file(dir):
"""returns the filename of a randomly chosen image in dir"""
images = [f for f in listdir(dir) if isimage(f)]
return choice(images)
if __name__ == "__main__":
dir = "c:\\python\\random_img\\"
r = random_file(dir)
print "Content-type: %s\n" % (content_type(r))
print file(dir+r, "rb").read()