多个站点有哪些来自于一个单一的,共同的Python Web框架运行多个站点的好(或至少是聪明)的方式(即:主塔,TurboGears中,等)?我知道你可以根据域名或重定向路径来重定向URI以指向特定站点的位置,我也看到了一些我想避免的粗暴的“if site == 'site1'/elseif/elseif/etc
”。运行从一个Python Web框架
3
A
回答
8
的Django有这种内置的。见the sites framework。
作为一种常规技术,在数据库架构中包含一个“主机”列,并将其附加到要作为主机特定的数据上,然后在检索数据时在查询中包含Host
HTTP标头。
2
我用的CherryPy作为我的Web服务器(随TurboGears的捆绑),我仅仅需要在绑定到本地主机不同端口的CherryPy Web服务器的多个实例。然后,我使用mod_proxy和mod_rewrite配置Apache,以基于HTTP请求将请求透明地转发到适当的端口。
1
在本地端口上使用多个服务器实例是一个好主意,但您不需要全功能的Web服务器来重定向HTTP请求。
我会用pound作为反向代理来完成这项工作。它体积小巧,快速,简单,正是我们这里所需要的。
WHAT磅是:
- 反向代理:它通过从客户端浏览器的请求的一个或多个后端服务器。
- 负载平衡器:它将在几个后端服务器之间分配来自客户端浏览器的请求,同时保留会话信息。
- SSL封装:Pound将解密来自客户端浏览器的HTTPS请求,并将它们作为纯HTTP传递给后端服务器。
- 一个HTTP/HTTPS杀毒软件:Pound会验证请求的正确性并且只接受格式正确的请求。
- 故障转移服务器:如果后端服务器发生故障,Pound会注意到这一事实,并在故障恢复之前停止向它传递请求。
- 请求重定向器:请求可能根据请求的URL在服务器之间分配。
6
与mod_python的Apache的使用Django,我承载多个(无关)Django的网站只是用下面的Apache的配置:
<VirtualHost 1.2.3.4>
DocumentRoot /www/site1
ServerName site1.com
<Location />
SetHandler python-program
SetEnv DJANGO_SETTINGS_MODULE site1.settings
PythonPath "['/www'] + sys.path"
PythonDebug On
PythonInterpreter site1
</Location>
</VirtualHost>
<VirtualHost 1.2.3.4>
DocumentRoot /www/site2
ServerName site2.com
<Location />
SetHandler python-program
SetEnv DJANGO_SETTINGS_MODULE site2.settings
PythonPath "['/www'] + sys.path"
PythonDebug On
PythonInterpreter site2
</Location>
</VirtualHost>
无需多次阿帕奇实例或代理服务器。对每个站点使用不同的PythonInterpreter指令(您输入的名称是任意的)可以保持名称空间分离。
相关问题
- 1. Python Web框架
- 2. 在一台机器上运行多个Web框架?
- 3. 从一个小型的Python Web框架发射头文件
- 4. 运行JQuery的另一个框架
- 5. 从一个框架
- 6. 什么是python web框架
- 7. 选择Python Web框架
- 8. IronPython Web框架
- 9. 运行在框架
- 10. 从网上运行一个Python脚本
- 11. 一个能与Sybase很好地协作的python web框架吗?
- 12. 选择一个java web框架2011
- 13. 挑选一个Web框架(机箱内)
- 14. 在JAVA中从一个框架移动到另一个框架
- 15. 运行一个web服务
- 16. 从ArcMap运行一个python脚本
- 17. 从另一个python脚本运行一个python脚本?
- 18. 如何从另一个python文件运行一个python文件?
- 19. 哪个Web服务框架?
- 20. Java Web框架
- 21. Python web框架的入门门槛低
- 22. 用于小团队的Python Web框架
- 23. 的RESTful的Python WSGI web框架
- 24. SOAP Web服务的Python框架
- 25. Python web框架与CRUD支持AJAX
- 26. 用于ERP开发的python web框架
- 27. Python POST JSON - 是否需要Web框架?
- 28. Web框架
- 29. 运行Play框架项目
- 30. 按钮装在一个python 3.6框架