Plesk nginx配置每个域和子域

时间:2014-01-06 15:20:26

标签: nginx plesk vhosts

我使用Plesk,我有三个域和子域,具有不同的ngnix配置。 目前我在每次更新后更改/etc/ngnix/plesk.conf.d/vhost/manual中的ngnix配置,因为我的更改被httpdmng覆盖。

现在我的问题;我可以在每个域的/ usr / local / psa / admin / conf / templates /文件夹中创建单独的模板吗?

实施例: mydomain1使用/usr/local/psa/admin/conf/templates/mydomain1/nginxDomainVirtualHost.php

中的模板

mydomain2使用/usr/local/psa/admin/conf/templates/mydomain2/nginxDomainVirtualHost.php

中的模板

2 个答案:

答案 0 :(得分:5)

如果有人遇到这篇文章,对于plesk 12,您只需在 / var / www / vhost / DOMAINE_NAME / conf / 目录中创建 vhost_nginx.conf ,然后运行 / usr / local / psa / admin / bin / httpdmng 以获取 last_nginx.conf

中包含的文件

答案 1 :(得分:3)

Plesk真的不应该编辑它的核心。当您需要更改域级配置时,需要在该文件外编辑一个文件。在Apache下,该文件在您的域的目录下名为vhost.conf。然后它会将其附加到基本配置。看起来nginx使用了类似的过程。

基于this post这是你需要做的事情

  

这里介绍如何在nginx虚拟主机配置中添加自定义包:

     

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

     

CP   /usr/local/psa/admin/conf/templates/default/domain/nginxDomainVirtualHost.php   的/ usr /本地/ PSA /管理/ CONF /模板/自定义/域/

     

加入   /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   所有域的配置

     

结果,如果域有conf / nginx.conf - 它将被包含在内   虚拟主机配置。