假设您已经使用 Pylons、Django 设置了您的站点,并且大多数站点运行良好并且根据使用的框架。但是,如果您有一个完全可以说是由平面 html 文件和它自己的一组图像组成的自定义部分,您没有时间使用框架实际合并这些部分并且被迫在同一域下基本支持? 是否应该有某种超级简约的默认控制器/视图,或者诸如此类的框架以某种智能方式提供支持?
我也意识到可能有人可以设置一个新的子域并将其重新路由到一个完全不同的目录,但我只是好奇当被迫处理一个框架时如何解决这个问题。
假设您已经使用 Pylons、Django 设置了您的站点,并且大多数站点运行良好并且根据使用的框架。但是,如果您有一个完全可以说是由平面 html 文件和它自己的一组图像组成的自定义部分,您没有时间使用框架实际合并这些部分并且被迫在同一域下基本支持? 是否应该有某种超级简约的默认控制器/视图,或者诸如此类的框架以某种智能方式提供支持?
我也意识到可能有人可以设置一个新的子域并将其重新路由到一个完全不同的目录,但我只是好奇当被迫处理一个框架时如何解决这个问题。
对于 pylons,您应该能够将静态 html 文件放在公共目录中。如果没有用于 url 的控制器,那么我认为 pylons 接下来会在公共文件夹中查找。
对于 Django,我会以与提供静态资产完全相同的方式提供这些服务——在你的site_media
目录中,连同 js、css 和 img 的子目录,你可以有一个 html 目录。那么 URL 就是/site_media/html/whatever.html
.
在 Django 中看看flatpages。它是软件包的一部分,django.contrib
并使用平面页面中间件来提供通过管理界面控制的平面 HTML。出于基本目的,提供额外的关于页面等应该可以解决问题。
您也可以只创建一个 HTML 文件夹并 -mod_python
至少使用 - 在 Apache 配置文件中为该路径设置任何处理程序(例如vhost.conf
)。
在提供静态页面时,我宁愿避免让 Django 或 Pylons 处理请求,而只使用 Web 服务器处理它。使用 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;
}