Как вы обслуживаете ванильные / пользовательские страницы на сайте MVC? - PullRequest
0 голосов
/ 11 ноября 2009

Допустим, вы настроили свой сайт с помощью Pylons, Django, и большая часть сайта работает нормально и в соответствии с используемой платформой. Однако, что если бы у вас был собственный раздел, который был полностью написан, состоящий из плоских html-файлов и собственного набора изображений, которые вы не успели на самом деле включить, используя платформу, и были вынуждены в основном поддерживать в том же домене ? Должны ли быть какие-то контроллеры / представления по умолчанию, которые очень минималистичны, или такие структуры, как эти, каким-то образом предлагают поддержку каким-то умным способом?

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

Ответы [ 4 ]

1 голос
/ 14 ноября 2009

При обслуживании статических страниц я бы предпочел, чтобы Django или Pylons не обрабатывали запрос и обрабатывали его только с веб-сервером. Используя Nginx, вы бы использовали директиву вроде:

location / {
   root /whatever/the/path/is/;

   # if the file exists, return it immediately
   if (-f $request_filename) {
      break;
   }

   # pass requests to MVC framework
   # i.e. proxy to another server on localhost:
   proxy_pass http://127.0.0.1:80;
}
1 голос
/ 11 ноября 2009

Для Django я бы обслуживал их точно так же, как вы обслуживаете свои статические ресурсы - в вашем каталоге site_media вместе с подкаталогами для js, css и img вы можете иметь каталог html. Тогда URL будет просто /site_media/html/whatever.html.

1 голос
/ 12 ноября 2009

В Django взгляните на flatpages . Он входит в пакет django.contrib и использует промежуточное программное обеспечение для плоских страниц, чтобы обслуживать плоский HTML, управляемый через интерфейс администратора. Для базовых целей, добавление дополнительных страниц о страницах или тому подобное, должно помочь.

Вы также можете просто создать папку HTML и - по крайней мере, с помощью mod_python - не устанавливать обработчик для этого пути в файле конфигурации Apache (например, vhost.conf).

1 голос
/ 11 ноября 2009

Для пилонов вы должны иметь возможность удалять статические html-файлы в каталог public . Если для URL-адреса нет контроллера, то я думаю, что пилоны будут искать в общей папке.

...