我想让Apache :: ASP在OSX Lion Server上运行。我已经在融合4 OSX狮子VM的全新安装,安装的Xcode应用程序(用命令行工具),并运行以下shell命令:获取Apache :: ASP在OSX Lion Server中运行 - 已更新为Mountain Lion
sudo perl -MCPAN -e shell
cpan> install CPAN
cpan> install Bundle::Apache::ASP
我添加到结束httpd.confg的文件(/Library/Server/Web/Config/apache2/httpd_server_app.conf 和 /Library/Server/Web/Config/apache2/httpd_server_app.conf.default):
<Files ~ (\.asp)>
SetHandler perl-script
PerlHandler Apache::ASP
PerlSetVar Global .
PerlSetVar StateDir /tmp/asp
</Files>
但无论将设定的处理程序或perlhandler导致Apache不重新启动。拿他们两个和Apache启动,但供应.asp文件为文本文件....
更新#1:
哎呀,二三十:
sudo apachectl restart
,我没甚至没有mod perl运行。添加以下到httpd.conf文件中得到了Apache的开始:
LoadModule perl_module libexec/apache2/mod_perl.so
Alias /perl/ /Library/WebServer/Documents/perl/
<Location /perl/>
SetHandler perl-script
PerlResponseHandler ModPerl::Registry
PerlOptions +ParseHeaders
Options +ExecCGI
Order allow,deny
Allow from all
</Location>
$请求 - > {}方法现在会返回一个值,但是....
%test = $Request->ServerVariables(); #or $Request->ServerVariables(URL);
%><%= $test %><%
输出:阿帕奇: :ASP ::集合= HASH(0x7f84114c58d8)
更新#2:
几个ServerVariables的是在Apache :: ASP与IIS未定义。语法与预期略有不同。下面将列出所有可用的服务器变量...
my $variables = $Request->{ServerVariables};
print join '<br>', sort keys %$variables;