Plesk nginx config for every domain and subdomain Plesk nginx config for every domain and subdomain nginx nginx

Plesk nginx config for every domain and subdomain


In case someone come across this post, for plesk 12 you just create vhost_nginx.conf in the /var/www/vhost/DOMAINE_NAME/conf/ directory and then run /usr/local/psa/admin/bin/httpdmng to get the file included in last_nginx.conf


Plesk really shouldn't have its core edited. When you need domain level config changes there's a file you need to edit outside that file. Under Apache that file was called vhost.conf under the directory for your domain. It would then append that to the base config. It looks like nginx uses a similar process.

Based on this post here's what you need to do

Here steps how to add custom include in nginx virtual host config:

mkdir /usr/local/psa/admin/conf/templates/custom/domain

cp /usr/local/psa/admin/conf/templates/default/domain/nginxDomainVirtualHost.php /usr/local/psa/admin/conf/templates/custom/domain/

add in /usr/local/psa/admin/conf/templates/custom/domain/nginxDomainVirtualHost.php:

 <?php if (file_exists($VAR->domain->physicalHosting->vhostDir . '/conf/nginx.conf')): ?>  include <?php echo $VAR->domain->physicalHosting->vhostDir;?>/conf/nginx.conf;  <?php endif ?>

/usr/local/psa/admin/bin/httpdmng --reconfigure-all # to apply new configuration for all domains

As result, if domain has conf/nginx.conf - it will be included into virtual host config.