Apache2-ASP
view release on metacpan or search on metacpan
sbin/asphelper view on Meta::CPAN
warn "="x79, "\n";
warn "Creating directory structure...\n";
mkdir($args->{domain}) or die "Cannot mkdir('$args->{domain}'): $!";
foreach my $dir (qw( lib etc conf htdocs handlers PAGE_CACHE MEDIA ))
{
mkdir("$args->{domain}/$dir") or die "Cannot mkdir('$args->{domain}'): $!";
}# end foreach()
open my $ofh, '>', "$args->{domain}/conf/apache2-asp-config.xml";
print $ofh <<"CONFIG_XML";
<?xml version="1.0" ?>
<configuration>
<system>
<post_processors>
<!--
<class>My::PostProcessor</class>
<class>My::PostProcessor2</class>
-->
</post_processors>
<libs>
<lib>\@ServerRoot\@/lib</lib>
</libs>
<load_modules>
<module>DBI</module>
</load_modules>
<env_vars>
<var>
<name>environment-var1</name>
<value>value-1</value>
</var>
<var>
<name>environment-var2</name>
<value>value-2</value>
</var>
</env_vars>
<settings>
<setting>
<name>mysetting</name>
<value>some-value</value>
</setting>
<setting>
<name>anothersetting</name>
<value>anothervalue</value>
</setting>
</settings>
</system>
<errors>
<error_handler>Apache2::ASP::ErrorHandler</error_handler>
<mail_errors_to>@{[ $args->{mail_errors_to} ]}</mail_errors_to>
<mail_errors_from>@{[ $args->{mail_errors_from} ]}</mail_errors_from>
<smtp_server>@{[ $args->{smtp_server} ]}</smtp_server>
</errors>
<web>
<application_name>@{[ $args->{application_name} ]}</application_name>
<application_root>\@ServerRoot\@</application_root>
<handler_root>\@ServerRoot\@/handlers</handler_root>
<media_manager_upload_root>\@ServerRoot\@/MEDIA</media_manager_upload_root>
<www_root>\@ServerRoot\@/htdocs</www_root>
<page_cache_root>\@ServerRoot\@/PAGE_CACHE</page_cache_root>
<request_filters>
<!--
<filter>
<uri_match>/.*</uri_match>
<class>My::MemberFilter</class>
</filter>
<filter>
<uri_equals>/index.asp</uri_equals>
<class>My::MemberFilter2</class>
</filter>
-->
</request_filters>
</web>
<data_connections>
<session>
<manager>Apache2::ASP::SessionStateManager::MySQL</manager>
<cookie_domain>@{[ $args->{session_cookie_domain} ]}</cookie_domain>
<cookie_name>@{[ $args->{session_cookie_name} ]}</cookie_name>
<dsn>@{[ $args->{session_dsn} ]}</dsn>
<username>@{[ $args->{session_user} ]}</username>
<password>@{[ $args->{session_pass} ]}</password>
<session_timeout>@{[ $args->{session_timeout} ]}</session_timeout>
</session>
<application>
<manager>Apache2::ASP::ApplicationStateManager::MySQL</manager>
<dsn>@{[ $args->{app_dsn} ]}</dsn>
<username>@{[ $args->{app_user} ]}</username>
<password>@{[ $args->{app_pass} ]}</password>
</application>
<main>
<dsn>@{[ $args->{main_dsn} ]}</dsn>
<username>@{[ $args->{main_user} ]}</username>
<password>@{[ $args->{main_pass} ]}</password>
</main>
</data_connections>
</configuration>
CONFIG_XML
close($ofh);
open my $conf_ofh, '>', "$args->{domain}/conf/httpd.conf";
print $conf_ofh <<"CONF";
# Load up some important modules:
PerlModule DBI
PerlModule Apache2::ASP::ModPerl
# Admin website:
<VirtualHost *:80>
ServerName @{[ $args->{domain} ]}
DocumentRoot @{[ cwd() . '/' . $args->{domain} . '/htdocs' ]}
# Set the directory index:
DirectoryIndex index.asp
( run in 0.874 second using v1.01-cache-2.11-cpan-b16cb0d3907 )