100 lines
3.3 KiB
PHP
100 lines
3.3 KiB
PHP
<?php echo AUTOGENERATED_CONFIGS; ?>
|
|
<?php /** @var Template_VariableAccessor $VAR */ ?>
|
|
<?php
|
|
if (!$VAR->domain->webmail->isActive && !$VAR->domain->webmail->suspended) {
|
|
echo "# Webmail is not enabled on the domain\n";
|
|
return;
|
|
}
|
|
?>
|
|
<?php
|
|
$ipAddresses = $VAR->server->webserver->listenLocalhost ?
|
|
[$VAR->domain->webmail->loopbackIpAddress] :
|
|
$VAR->domain->webmail->ipAddresses;
|
|
?>
|
|
<?php foreach ($ipAddresses as $ipAddress): ?>
|
|
<VirtualHost <?php
|
|
echo "{$ipAddress->escapedAddress}:{$VAR->server->webserver->httpPort}";
|
|
echo ($VAR->server->webserver->proxyActive && $ipAddress->address !== '127.0.0.1') ? " 127.0.0.1:{$VAR->server->webserver->httpPort}" : "";
|
|
?>>
|
|
|
|
ServerName "webmail.<?php echo $VAR->domain->asciiName ?>"
|
|
<?php foreach ($VAR->domain->mailAliases as $alias): ?>
|
|
ServerAlias "webmail.<?php echo $alias->asciiName ?>"
|
|
<?php endforeach; ?>
|
|
|
|
UseCanonicalName Off
|
|
<?php if ($VAR->domain->webmail->suspended) {
|
|
echo $VAR->includeTemplate('webmail/suspend.php');
|
|
}?>
|
|
|
|
<?php switch ($VAR->domain->webmail->type) {
|
|
case 'atmail':
|
|
echo $VAR->includeTemplate('webmail/atmail.php');
|
|
break;
|
|
case 'horde':
|
|
echo $VAR->includeTemplate('webmail/horde.php');
|
|
break;
|
|
case 'roundcube':
|
|
echo $VAR->includeTemplate('webmail/roundcube.php');
|
|
break;
|
|
} ?>
|
|
|
|
<?php echo $VAR->includeTemplate('domain/PCI_compliance.php') ?>
|
|
|
|
<?=$VAR->domain->webmail->extensionsConfigs?>
|
|
</VirtualHost>
|
|
<?php endforeach; ?>
|
|
|
|
<?php if ($VAR->domain->webmail->sslCertificate): ?>
|
|
<IfModule mod_ssl.c>
|
|
<?php foreach ($ipAddresses as $ipAddress): ?>
|
|
<VirtualHost <?php
|
|
echo "{$ipAddress->escapedAddress}:{$VAR->server->webserver->httpsPort}";
|
|
echo ($VAR->server->webserver->proxyActive && $ipAddress->address !== '127.0.0.1') ? " 127.0.0.1:{$VAR->server->webserver->httpsPort}" : "";
|
|
?>>
|
|
|
|
ServerName "webmail.<?php echo $VAR->domain->asciiName ?>"
|
|
<?php foreach ($VAR->domain->mailAliases as $alias): ?>
|
|
ServerAlias "webmail.<?php echo $alias->asciiName ?>"
|
|
<?php endforeach; ?>
|
|
|
|
UseCanonicalName Off
|
|
|
|
<?php $sslCertificate = $VAR->domain->webmail->sslCertificate; ?>
|
|
<?php if ($sslCertificate->ceFilePath): ?>
|
|
SSLEngine on
|
|
SSLVerifyClient none
|
|
SSLCertificateFile <?php echo $sslCertificate->ceFilePath ?>
|
|
|
|
<?php if ($sslCertificate->caFilePath): ?>
|
|
SSLCACertificateFile <?php echo $sslCertificate->caFilePath ?>
|
|
<?php endif; ?>
|
|
<?php endif; ?>
|
|
|
|
<?php if ($VAR->domain->webmail->suspended) {
|
|
echo $VAR->includeTemplate('webmail/suspend.php');
|
|
}?>
|
|
|
|
<?php switch ($VAR->domain->webmail->type) {
|
|
case 'atmail':
|
|
echo $VAR->includeTemplate('webmail/atmail.php');
|
|
break;
|
|
case 'horde':
|
|
echo $VAR->includeTemplate('webmail/horde.php');
|
|
break;
|
|
case 'roundcube':
|
|
echo $VAR->includeTemplate('webmail/roundcube.php');
|
|
break;
|
|
default:
|
|
echo "# Using custom webmail type: '{$VAR->domain->webmail->type}'";
|
|
break;
|
|
} ?>
|
|
|
|
<?php echo $VAR->includeTemplate('domain/PCI_compliance.php') ?>
|
|
|
|
<?=$VAR->domain->webmail->extensionsConfigs?>
|
|
</VirtualHost>
|
|
<?php endforeach; ?>
|
|
</IfModule>
|
|
<?php endif ?>
|