我们有这样的情况: - Apache上运行的mod_perl - 用自己的目录 多个虚拟主机 - 每个虚拟模块具有Perl模块相同的名称(开发主机,模块不同的一点点,但有相同的名称) - Apache2 :: Reload为每个虚拟主机重新加载模块更改的mod_perl和多个虚拟主机
但apache抛出500错误的每页1/3请求重新加载页面,并没有在日志中的具体错误,只有警告关于“重新定义功能“。
也许有一些要求运行相同的模块名称,但不同的路径,并将它们区分开来?
我们有这样的情况: - Apache上运行的mod_perl - 用自己的目录 多个虚拟主机 - 每个虚拟模块具有Perl模块相同的名称(开发主机,模块不同的一点点,但有相同的名称) - Apache2 :: Reload为每个虚拟主机重新加载模块更改的mod_perl和多个虚拟主机
但apache抛出500错误的每页1/3请求重新加载页面,并没有在日志中的具体错误,只有警告关于“重新定义功能“。
也许有一些要求运行相同的模块名称,但不同的路径,并将它们区分开来?
下面是它如何做的:
NameVirtualHost 192.168.0.140
<VirtualHost 192.168.0.140>
PerlOptions +Parent
PerlSwitches -Mlib=/path/to/application
DocumentRoot /path/to/application
ServerName name.domain.com
</VirtualHost>
不,您不能“运行相同的模块名称,但具有不同的路径”。 Perl不会那样工作。如果你想拥有多个环境,请将它们分开。您可以在各种端口上运行具有不同配置的许多Apache实例(请参阅-f *configfilename*
选件)。然后在主服务器的每个虚拟主机中,将代理反向代理到相应端口上的后端服务器。