D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
opt
/
psa
/
admin
/
conf
/
templates
/
default
/
domain
/
Filename :
domainVirtualHost.php
back
Copy
<?php /** * @var Template_VariableAccessor $VAR * @var array $OPT */ ?> <?php if ($OPT['ssl']): ?> <IfModule mod_ssl.c> <?php endif; ?> <VirtualHost <?php echo $OPT['ipAddress']->escapedAddress ?>:<?php echo $OPT['ssl'] ? $VAR->server->webserver->httpsPort : $VAR->server->webserver->httpPort ?> <?php echo ($VAR->server->webserver->proxyActive && $OPT['ipAddress']->isIpV6()) ? "127.0.0.1:" . ($OPT['ssl'] ? $VAR->server->webserver->httpsPort : $VAR->server->webserver->httpPort) : ''; ?>> ServerName "<?php echo $VAR->domain->asciiName ?>" <?php if ($VAR->domain->isWildcard): ?> ServerAlias "<?php echo $VAR->domain->wildcardName ?>" <?php else: ?> ServerAlias "www.<?php echo $VAR->domain->asciiName ?>" <?php endif; ?> <?php if ($VAR->server->webserver->listenLocalhost): ?> <?php if ($VAR->domain->physicalHosting->hasIpV6()): ?> ServerAlias "ipv6.<?php echo $VAR->domain->asciiName ?>" <?php endif; ?> <?php if ($VAR->domain->physicalHosting->hasIpV4()): ?> ServerAlias "ipv4.<?php echo $VAR->domain->asciiName ?>" <?php endif; ?> <?php else: ?> <?php if ($OPT['ipAddress']->isIpV6()): ?> ServerAlias "ipv6.<?php echo $VAR->domain->asciiName ?>" <?php elseif ($OPT['ipAddress']->isIpV4()): ?> ServerAlias "ipv4.<?php echo $VAR->domain->asciiName ?>" <?php endif; ?> <?php endif; ?> <?php foreach ($VAR->domain->webAliases AS $alias): ?> ServerAlias "<?php echo $alias->asciiName ?>" ServerAlias "www.<?php echo $alias->asciiName ?>" <?php if ($VAR->server->webserver->listenLocalhost): ?> <?php if ($VAR->domain->physicalHosting->hasIpV6()): ?> ServerAlias "ipv6.<?php echo $alias->asciiName ?>" <?php endif; ?> <?php if ($VAR->domain->physicalHosting->hasIpV4()): ?> ServerAlias "ipv4.<?php echo $alias->asciiName ?>" <?php endif; ?> <?php else: ?> <?php if ($OPT['ipAddress']->isIpV6()): ?> ServerAlias "ipv6.<?php echo $alias->asciiName ?>" <?php elseif ($OPT['ipAddress']->isIpV4()): ?> ServerAlias "ipv4.<?php echo $alias->asciiName ?>" <?php endif; ?> <?php endif; ?> <?php endforeach; ?> <?php if ($VAR->domain->previewDomainName): ?> ServerAlias "<?php echo $VAR->domain->previewDomainName ?>" <?php endif; ?> <?php if ($VAR->server->webserver->listenLocalhost): ?> <?php foreach ($VAR->domain->physicalHosting->ipAddresses as $ip): ?> <?php if ($ip->defaultDomainId === $VAR->domain->id): ?> ServerAlias "<?php echo $ip->address ?>" <?php endif; ?> <?php endforeach; ?> <?php endif; ?> UseCanonicalName Off <?php if (!$VAR->server->webserver->apache->pipelogEnabled): ?> CustomLog <?php echo $VAR->domain->physicalHosting->logsDir ?>/<?php echo $OPT['ssl'] ? 'access_ssl_log' : 'access_log' ?> plesklog <?php endif; ?> ErrorLog "<?php echo $VAR->domain->physicalHosting->logsDir ?>/error_log" <?php if ($VAR->domain->isMailAutodiscoveryEnabled): ?> <?php echo $VAR->includeTemplate('domain/service/mailAutoConfig.php') ?> <?php endif ?> <?php if (!$OPT['ssl'] && $VAR->domain->physicalHosting->sslRedirect): ?> <?php if (is_file($VAR->domain->physicalHosting->customConfigFile)): ?> Include "<?php echo $VAR->domain->physicalHosting->customConfigFile ?>" <?php endif; ?> <?php echo $VAR->includeTemplate('domain/service/seoSafeRedirects.php', array('ssl' => true)); ?> <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,QSA] </IfModule> </VirtualHost> <?php return; ?> <?php endif; ?> DocumentRoot "<?php echo $OPT['ssl'] ? $VAR->domain->physicalHosting->httpsDir : $VAR->domain->physicalHosting->httpDir ?>" <IfModule mod_suexec.c> SuexecUserGroup "<?php echo $VAR->domain->physicalHosting->login ?>" "<?php echo $VAR->server->webserver->clientGroup ?>" </IfModule> <?php echo $VAR->includeTemplate('domain/PCI_compliance.php') ?> <IfModule mod_userdir.c> <?php if (count($VAR->domain->physicalHosting->webusers)): ?> <?php foreach (array_chunk($VAR->domain->physicalHosting->webusers, 50) AS $chunk): ?> UserDir enabled <?php echo implode(" ", array_map(function($webuser) { return $webuser->login;}, $chunk)) ?> <?php endforeach; ?> <?php endif; ?> UserDir "<?php echo $VAR->domain->physicalHosting->webUsersDir ?>/*" </IfModule> <?php if ($VAR->domain->physicalHosting->vhostId): ?> <IfModule mod_sysenv.c> SetSysEnv PP_VHOST_ID "<?php echo $VAR->domain->physicalHosting->vhostId ?>" </IfModule> <?php endif; ?> <?php if ($VAR->domain->physicalHosting->cgi && !$VAR->domain->physicalHosting->rootApplication): ?> ScriptAlias "/cgi-bin/" "<?php echo $VAR->domain->physicalHosting->cgiBinDir ?>/" <?php endif; ?> <?php if ($VAR->domain->physicalHosting->hasWebstat):?> <?php if ($OPT['ssl'] || !$VAR->domain->physicalHosting->ssl): ?> Alias "/plesk-stat" "<?php echo $VAR->domain->physicalHosting->statisticsDir ?>" <Location /plesk-stat/> Options +Indexes </Location> <Location /plesk-stat/logs/> Require valid-user </Location> Alias /webstat <?php echo $VAR->domain->physicalHosting->statisticsDir ?>/webstat Alias /webstat-ssl <?php echo $VAR->domain->physicalHosting->statisticsDir ?>/webstat-ssl Alias /ftpstat <?php echo $VAR->domain->physicalHosting->statisticsDir ?>/ftpstat Alias /anon_ftpstat <?php echo $VAR->domain->physicalHosting->statisticsDir ?>/anon_ftpstat Alias /awstats-icon <?php echo $VAR->server->awstats->iconsDir ?> <?php else: ?> Redirect permanent /plesk-stat https://<?php echo $VAR->domain->urlName ?>/plesk-stat Redirect permanent /webstat https://<?php echo $VAR->domain->urlName ?>/webstat Redirect permanent /webstat-ssl https://<?php echo $VAR->domain->urlName ?>/webstat-ssl Redirect permanent /ftpstat https://<?php echo $VAR->domain->urlName ?>/ftpstat Redirect permanent /anon_ftpstat https://<?php echo $VAR->domain->urlName ?>/anon_ftpstat Redirect permanent /awstats-icon https://<?php echo $VAR->domain->urlName ?>/awstats-icon <?php endif; ?> <?php endif; ?> <?php if ($OPT['ssl']): ?> <?php $sslCertificate = $VAR->server->sni && $VAR->domain->physicalHosting->sslCertificate ? $VAR->domain->physicalHosting->sslCertificate : $OPT['ipAddress']->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 else: ?> <IfModule mod_ssl.c> SSLEngine off </IfModule> <?php endif; ?> <?php if ($VAR->domain->physicalHosting->php && $VAR->domain->physicalHosting->phpHandlerType == 'cgi'): ?> SetEnv PP_CUSTOM_PHP_INI <?php echo $VAR->domain->physicalHosting->vhostSystemDir ?>/etc/php.ini SetEnv PP_CUSTOM_PHP_CGI_INDEX <?php echo $VAR->domain->physicalHosting->phpHandlerId ?> <?php endif; ?> <?php if ($VAR->domain->physicalHosting->php && $VAR->domain->physicalHosting->phpHandlerType == 'fastcgi'): ?> <IfModule mod_fcgid.c> FcgidInitialEnv PP_CUSTOM_PHP_INI <?php echo $VAR->domain->physicalHosting->vhostSystemDir ?>/etc/php.ini FcgidInitialEnv PP_CUSTOM_PHP_CGI_INDEX <?php echo $VAR->domain->physicalHosting->phpHandlerId ?> FcgidMaxRequestLen 134217728 <?php if ($VAR->domain->physicalHosting->scriptTimeout): ?> FcgidIOTimeout <?php echo $VAR->domain->physicalHosting->scriptTimeout; ?> <?php endif; ?> </IfModule> <?php endif; ?> <?php if ($VAR->domain->physicalHosting->scriptTimeout): ?> TimeOut <?php echo $VAR->domain->physicalHosting->scriptTimeout; ?> <?php endif; ?> <Directory <?php echo $OPT['ssl'] ? $VAR->domain->physicalHosting->httpsDir : $VAR->domain->physicalHosting->httpDir ?>> <?php if ($VAR->domain->physicalHosting->perl) { echo $VAR->includeTemplate('service/mod_perl.php'); } if ( !$VAR->domain->physicalHosting->php || !in_array($VAR->domain->physicalHosting->phpHandlerType, array('cgi', 'fastcgi', 'fpm')) ) { echo $VAR->includeTemplate('service/php.php', array( 'enabled' => $VAR->domain->physicalHosting->php, 'safe_mode' => $VAR->domain->physicalHosting->phpSafeMode, 'dir' => $OPT['ssl'] ? $VAR->domain->physicalHosting->httpsDir : $VAR->domain->physicalHosting->httpDir, 'settings' => $VAR->domain->physicalHosting->phpSettings, )); } if ($VAR->domain->physicalHosting->python) { echo $VAR->includeTemplate('service/mod_python.php'); } if ($VAR->domain->physicalHosting->fastcgi) { echo $VAR->includeTemplate('service/mod_fastcgi.php'); } if ($VAR->domain->physicalHosting->php && 'cgi' == $VAR->domain->physicalHosting->phpHandlerType) { echo $VAR->includeTemplate('service/php_over_cgi.php'); } if ($VAR->domain->physicalHosting->php && 'fastcgi' == $VAR->domain->physicalHosting->phpHandlerType) { echo $VAR->includeTemplate('service/php_over_fastcgi.php'); } if ($VAR->domain->physicalHosting->php && 'fpm' == $VAR->domain->physicalHosting->phpHandlerType) { echo $VAR->includeTemplate('service/php_over_fpm.php'); } ?> <?php if ($OPT['ssl']): ?> SSLRequireSSL <?php endif; ?> Options <?php echo $VAR->domain->physicalHosting->ssi ? '+' : '-' ?>Includes <?php echo $VAR->domain->physicalHosting->cgi ? '+' : '-' ?>ExecCGI </Directory> <?php if ($VAR->domain->physicalHosting->webusersScriptingEnabled): ?> <?php foreach ($VAR->domain->physicalHosting->webusers as $webuser): ?> <Directory <?php echo $webuser->dir ?>> Options <?php echo $VAR->domain->physicalHosting->ssi && $webuser->ssi ? '+' : '-' ?>Includes <?php echo $VAR->domain->physicalHosting->cgi && $webuser->cgi ? '+' : '-' ?>ExecCGI <?php if ($VAR->domain->physicalHosting->cgi && $webuser->cgi): ?> AddHandler cgi-script .cgi <?php endif; ?> <?php if ($VAR->domain->physicalHosting->perl && $webuser->perl) { echo $VAR->includeTemplate('service/mod_perl.php'); } if ( !$VAR->domain->physicalHosting->php || !in_array($VAR->domain->physicalHosting->phpHandlerType, array('cgi', 'fastcgi', 'fpm')) ) { echo $VAR->includeTemplate('service/php.php', array( 'enabled' => $VAR->domain->physicalHosting->php && $webuser->php, 'safe_mode' => $VAR->domain->physicalHosting->phpSafeMode, 'dir' => $webuser->dir, 'settings' => $webuser->phpSettings, )); } if ($VAR->domain->physicalHosting->php && $webuser->php && 'cgi' == $VAR->domain->physicalHosting->phpHandlerType) { echo $VAR->includeTemplate('service/php_over_cgi.php'); } if ($VAR->domain->physicalHosting->php && $webuser->php && 'fastcgi' == $VAR->domain->physicalHosting->phpHandlerType) { echo $VAR->includeTemplate('service/php_over_fastcgi.php'); } if ($VAR->domain->physicalHosting->php && $webuser->php && 'fpm' == $VAR->domain->physicalHosting->phpHandlerType) { echo $VAR->includeTemplate('service/php_over_fpm.php'); } if ($VAR->domain->physicalHosting->python && $webuser->python) { echo $VAR->includeTemplate('service/mod_python.php'); } if ($VAR->domain->physicalHosting->fastcgi && $webuser->fastcgi) { echo $VAR->includeTemplate('service/mod_fastcgi.php'); } ?> </Directory> <?php endforeach; ?> <?php else: ?> <Directory <?php echo $VAR->domain->physicalHosting->webUsersDir ?>> <?php echo $VAR->includeTemplate('service/php.php', array( 'enabled' => false, 'safe_mode' => true, 'dir' => $VAR->domain->physicalHosting->webUsersDir, 'settings' => $VAR->domain->physicalHosting->phpSettings, )); ?> </Directory> <?php endif; ?> <?php if (!$VAR->domain->physicalHosting->isMainDomain): ?> <Directory <?php echo $VAR->domain->physicalHosting->vhostDir ?>> Options +FollowSymLinks </Directory> <?php endif ?> <?php echo $VAR->includeTemplate('domain/service/protectedDirectories.php', $OPT) . "\n"; if ($VAR->domain->physicalHosting->errordocs) { echo $VAR->includeTemplate('domain/service/errordocs.php') . "\n"; } ?> <?php if (is_dir($OPT['ssl'] ? $VAR->domain->physicalHosting->siteAppsSslConfigDir : $VAR->domain->physicalHosting->siteAppsConfigDir)): ?> <?php echo $VAR->server->webserver->includeOptionalConfig(($OPT['ssl'] ? $VAR->domain->physicalHosting->siteAppsSslConfigDir : $VAR->domain->physicalHosting->siteAppsConfigDir) . '/*.conf') ?> <?php endif; ?> <?php echo $VAR->domain->physicalHosting->apacheSettings ?> <?php if ($VAR->domain->physicalHosting->directoryIndex): ?> DirectoryIndex <?=$VAR->quote($VAR->domain->physicalHosting->directoryIndex)?> <?php endif ?> <?php echo $VAR->includeTemplate('domain/service/seoSafeRedirects.php', array('ssl' => $OPT['ssl'])); ?> <?php if ($VAR->domain->suspended): ?> <?php echo $VAR->includeTemplate('domain/service/suspend.php'); ?> <?php endif; ?> <?php if (is_file($OPT['ssl'] ? $VAR->domain->physicalHosting->customSslConfigFile : $VAR->domain->physicalHosting->customConfigFile)): ?> Include "<?php echo $OPT['ssl'] ? $VAR->domain->physicalHosting->customSslConfigFile : $VAR->domain->physicalHosting->customConfigFile ?>" <?php endif; ?> <?php if ($VAR->domain->physicalHosting->apacheWebAppFirewallSettings): ?> <IfModule mod_security2.c> <?php echo $VAR->domain->physicalHosting->apacheWebAppFirewallSettings ?> </IfModule> <?php endif ?> <Directory <?php echo $VAR->webspace->vhostDir ?>> <?php if ($VAR->domain->physicalHosting->restrictFollowSymLinks): ?> Options -FollowSymLinks <?php endif ?> <?php $allowOverrideOptions = ['Indexes', 'SymLinksIfOwnerMatch', 'MultiViews']; if (!$VAR->domain->physicalHosting->restrictFollowSymLinks) { $allowOverrideOptions[] = 'FollowSymLinks'; } if ($VAR->domain->physicalHosting->cgi || $VAR->server->webserver->apache->allowOverrideExecCGI) { $allowOverrideOptions[] = 'ExecCGI'; } if ($VAR->domain->physicalHosting->ssi || $VAR->server->webserver->apache->allowOverrideIncludes) { $allowOverrideOptions[] = 'Includes'; $allowOverrideOptions[] = 'IncludesNOEXEC'; } ?> AllowOverride AuthConfig FileInfo Indexes Limit Options=<?=implode(',', $allowOverrideOptions)?> </Directory> <?php if (!$VAR->server->webserver->proxyActive): ?> <?php if ($VAR->domain->physicalHosting->expires): ?> <IfModule mod_expires.c> ExpiresActive On ExpiresDefault "access plus <?=$VAR->escape($VAR->domain->physicalHosting->expires)?> seconds" </IfModule> <?php endif ?> <IfModule mod_headers.c> <?php foreach ((array)$VAR->domain->physicalHosting->headers as list($name, $value)): ?> Header add <?=$VAR->quote([$name, $value])?> <?php endforeach ?> </IfModule> <?php endif ?> <?=$VAR->domain->physicalHosting->extensionsConfigs?> </VirtualHost> <?php if ($OPT['ssl']): ?> </IfModule> <?php endif ?>