---
name: "RunApp::Apache"
section: "3pm"
platform: "linux"
package: "librunapp-perl"
version: "0.13-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/RunApp::Apache"
---

# RunApp::Apache(3pm)

Apache control for RunApp

## NAME

RunApp::Apache - Apache control for RunApp

## SYNOPSIS

```
 use RunApp::Apache;
 $apache = RunApp::Apache->new
            (root => "/tmp/apache_run",
             report => 1,
             apxs => '/usr/local/sbin/apxs',
             # httpd => '/usr/local/sbin/httpd',
             required_modules => ["log_config", "alias", "perl", "mime"],
             config_block => q{
 [% IF AP_VERSION == 2 %]
  eval { use Apache2 };
  eval { use Apache::compat };
 [% END %]
 <Location /myapp>
  AllowOverride None
  SetHandler perl-script
  PerlSetVar approot [% cwd %]
  PerlHandler MyApp
  Options +ExecCGI
 </Location>
 });
```

## DESCRIPTION

This is the class for defining a apache web server to be used in RunApp.

## CONSTRUCTOR

### new (%arg)

Required arg:

- root

  The root for the apache instance.

- apxs

  - httpd

  If `"apxs"` is specified, `"httpd"` will be derived from it.

- required\_modules

  A arrayref to the apache modules required.

- config\_block

  The config block that will be the *extra* block in the template used by RunApp::Template::Apache.

- CTL

  The class for handling apachectl.  The default is RunApp::Control::AppControl.  You can also use RunApp::Control::ApacheCtl.

- CONF

  The class for handling apache config.  The default is RunApp::Template::Apache.  It is used in the `"build"` phase of RunApp

## SEE ALSO

RunApp, RunApp::Control::Apache, RunApp::Template::Apache, App::Control

## AUTHORS

Chia-liang Kao \<clkao@clkao.org\>

Refactored from works by Leon Brocard \<acme@astray.com\> and Tom Insam \<tinsam@fotango.com\>.

## COPYRIGHT

Copyright (C) 2002-5, Fotango Ltd.

This module is free software; you can redistribute it or modify it under the same terms as Perl itself.
