1

我正在尝试几种语言(Python、Ruby ...),我想知道是否有办法优化我的 Apache 服务器以某些VirtualHost中加载 某些模块,例如:

http://myapp1 <- just with Ruby support 
http://myapp2 <- just with Python support
http://myapp3 <- just with Php support
...

谢谢。

4

4 回答 4

3

每个 Apache 工作者都会加载每个模块,因此无法在 Apache 本身内完成。

您需要做的是将您的语言模块移动到 Apache 工作人员之外的进程。

这是通过以下模块为您的语言完成的:

于 2009-07-04T21:12:49.227 回答
0

我不认为那是可能的,

  1. 相同的线程/分叉进程可能正在为来自不同虚拟主机的页面提供服务。那么如果它只加载了 python,当它需要服务 ruby​​ 时会发生什么?
  2. 由于原因 1,某些指令仅是 Web 服务器,而不是特定于虚拟主机的。MaxRequestsPerChild、LoadModule 等就是这样。
于 2009-07-04T20:27:21.563 回答
0

我认为唯一的方法是拥有一个“代理”网络服务器,将请求分派到真实服务器......

代理服务器有一个域名列表 -> 服务器端语言,除了透明地重定向到正确的真实服务器之外什么都不做

有 N 台真实服务器,每台都有特定的配置和支持和加载的单一语言......当然,每台服务器都会在不同的端口上监听,最终只在环回设备上

Apache mod_proxy 应该可以完成这项工作

我的 2 美分

于 2009-07-16T10:18:36.547 回答
0

我的想法是几个 apache 进程(每个都有不同的配置)在不同的地址和/或端口上侦听,并在前端重定向到相应的服务器的 http 代理(squid 或 apache)。这可能具有缓存的附加优势。

于 2009-09-19T15:10:38.743 回答