Първо, трябва да кажа, че съм виждал нещо подобно в дискусионната група на web2py, но не можах да го разбера много добре.
Настроих уебсайт, управляван от база данни, използвайки web2py, в който записите са само HTML текст. Повечето от тях ще съдържат img
и/или video
тагове, които сочат към относителни URL адреси; тези файлове се съхраняват в папки с модела на адрес static/content/article/<article-name>
и base
href
на документа се задава чрез контролера, за да работят тези връзки. И така, изображенията се съхраняват и препращат директно, без всички машини за качване/изтегляне.
Тествам го локално и използвам сървър на Rocket, защото не ми е разрешено да инсталирам Apache на този компютър.
Проблемът:
Всичко работи добре, освен, както изглежда, когато се изискват няколко „големи“ файла. Под „големи“ имам предвид, че 4Mb файлове бяха достатъчни, което всъщност не е много (и мисля, че малко по-малки файлове биха довели до същия резултат). Почти съм сигурен, че връзките не са повредени, тъй като 1) чрез копиране/поставяне на техните URL адреси в браузъра те се показват нормално, 2) изображенията/видеоклиповете изглеждат добре/счупени произволно, когато опреснявам страницата и 3) понякога видеоклип зарежда до определен момент и след това спира, а инспекторът на браузъра показва сигнал „неуспех“. Когато замених тези файлове с по-малки (всеки с дузина kb), всички се заредиха. Друго нещо, което трябва да имате предвид е, че понякога отнема наистина много време, докато страницата приключи зареждането (от 2 секунди до няколко минути).
Въпросите:
Това ли е най-простият/оптимален начин за свършване на работата? Знам, че web2py има някои удобни функции като полета за качване, но не знам как мога да направя тези файлове без усилие посочени в документа, като се има предвид, че ще има някои специални функции в такива страници, включващи статичните файлове. Така че решението, което измислих досега, беше да създам директория, чието име е равно на записа и да съхранявам файловете там, както казах преди. Прекалено ли е, като се има предвид какво може да предложи web2py?
Ако отговорът на първия въпрос е нещо като „да“, тогава (очевиден въпрос) какво може да е причината за проблема и как да го поправя? Има ли нещо общо с факта, че web2py изпраща статични файлове на парчета от 1Mb? Може ли да е сървърът на Rocket? Или защото го тествам локално?
Благодаря предварително!