我们遇到这种情况: - 运行mod_perl的Apache - 具有自己目录的多个虚拟主机 - 每个虚拟模块的perl模块名称相同(开发主机,模块略有不同,但名称相同) - Apache2 ::重新加载每个虚拟主机以在更改时重新加载模块
但是,对于每次重复加载的1/3请求,apache会抛出500错误,并且日志中没有特定错误,只有关于“重新定义的函数”的警告。
也许有一些要求运行相同的模块名称但不同的路径并区别它们?
答案 0 :(得分:2)
以下是它的完成方式:
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>
答案 1 :(得分:1)
不,您不能“运行相同的模块名称,但使用不同的路径”。 Perl就是不行。如果您想拥有多个环境,请将它们分开。您可以在各种端口上运行具有不同配置的许多Apache实例(请参阅-f *configfilename*
选项)。然后在主服务器的每个vhost中,反向代理到相应端口上的后端服务器。