2014-01-06 52 views
3

我使用Plesk,我有三個域和子域具有不同的ngnix配置。 目前我在每次更新後都會更改/etc/ngnix/plesk.conf.d/vhost/manual中的ngnix配置,因爲我的更改正被httpdmng覆蓋。每個域和子域的Plesk nginx配置

現在我的問題;我可以在每個域的/ 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

回答

3

的Plesk真的不應該有它的核心編輯。當您需要進行域級配置更改時,需要在該文件外部編輯一個文件。在Apache下,該文件在您的域的目錄下名爲vhost.conf。然後它會將其附加到基本配置。看起來nginx使用類似的過程。

基於this post這裏就是你需要做的

以下步驟如何添加自定義包括在nginx的虛擬主機配置是什麼:

的mkdir在/ usr /本地/ PSA /管理/ conf目錄/模板/定製/域

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 /本地/ PSA /管理/斌/ httpdmng --reconfigure,所有#爲所有域應用新的 配置

因此,如果域具有conf/nginx.conf - 它將包含在 虛擬主機配置中。

4

萬一有人碰到過這樣的帖子,爲的Plesk 12剛纔在/無功/網絡/虛擬主機/ DOMAINE_NAME/conf目錄/目錄下創建vhost_nginx.conf,然後運行在/ usr /本地/ psa/admin/bin/httpdmng獲取中包含的文件last_nginx.conf

+0

問題是,創建此文件不會覆蓋默認值已經存在的內容。例如,'location/{}'已經由默認文件設置。所以你不能做任何改變它。至少我還沒有想出如何編輯一些東西。 – David