Article ID: 114569, created on Aug 24, 2012, last review on Jan 16, 2015

  • Applies to:
  • Plesk 11.0 for Linux

症状

Nginx を有効にすると、複数の IP にデフォルトドメインが割り当てられている場合に、IP ベースの仮想ホスト(デフォルトドメインが IP)が正しく機能しません。

原因

Nginx は、IP ベースのプロキシリクエストを作成する際に、Apache にアドレス 127.0.0.1 で接続してリクエストを送信します。つまり、Apache から見ると、すべての仮想ホストが同じ IP アドレス 127.0.0.1 ということになり、IP ベースの仮想ホストが正しく機能しなくなります。

つまり、/usr/local/psa/admin/conf/ip_vhosts_bootstrap.conf ファイルに定義されている最初の仮想ホストが、デフォルトドメインが割り当てられていないものを含め、すべての IP アドレスのデフォルトとなります。

解決策

この問題は将来のアップデートで修正され、新しい KB 記事が作成される予定です。KB 記事の作成時に通知を受信したい場合は、Parallels Plesk Panel 製品関連の新規 KB 記事について通知を受け取るよう購読設定をすることをお勧めします。

回避策として、以下の手順を実行できます。

  1. /usr/local/psa/admin/conf/templates ディレクトリに進みます

    # cd /usr/local/psa/admin/conf/templates 
    
  2. custom というサブディレクトリを作成します。

    # mkdir custom 
    
  3. /usr/local/psa/admin/conf/templates/default/nginx.php ファイルを custom ディレクトリにコピーします

    # cp default/nginx.php custom/ 
    
  4. nginx.php ファイルを編集して、127.0.0.1$host または $server_addr に置き換えます

    # vi custom/nginx.php 
    
  5. 以下のような結果になります

    proxy_pass http://$server_addr:<?php echo $VAR->server->webserver->httpPort ?>;
    
  6. ウェブサーバの構成をリビルドします

    /usr/local/psa/admin/sbin/httpdmng --reconfigure-all
    

0a53c5a9ca65a74d37ef5c5eaeb55d7f 56797cefb1efc9130f7c48a7d1db0f0c a914db3fdc7a53ddcfd1b2db8f5a1b9c 29d1e90fd304f01e6420fbe60f66f838 aea4cd7bfd353ad7a1341a257ad4724a

Email subscription for changes to this article