他のすべてのドメインを制限し、Apacheプロキシ構成はServerNameのみを提供します。

他のすべてのドメインを制限し、Apacheプロキシ構成はServerNameのみを提供します。

RHEL 6では、Apache HTTPD 2.2 Webサーバーと名前ベースの仮想ホスティングを使用します。私のウェブサイトの1つにプロキシを設定しようとしています。 (注:キバナダッシュボードの場合)

<VirtualHost 192.168.12.20:80>
    ServerName admin.kibana.com
    ServerAlias www.admin.kibana.com
    DocumentRoot /opt/kibana
    <Directory />
            Options FollowSymLinks
            AllowOverride None
    </Directory>
    <Directory /opt/kibana>
            Options -Indexes FollowSymLinks -MultiViews
            AllowOverride all
            Order allow,deny
            allow from all
    </Directory>

    ErrorLog logs/admin.error.log
    LogLevel error
    CustomLog logs/admin.log combined

    ProxyRequests off
    ProxyPreserveHost On
    ProxyVia On

    <Proxy *>
    Order deny,allow
    Allow from all
    </Proxy>

    ProxyPass / http://192.168.12.20:5601/
    ProxyPassReverse / http://192.168.12.20:5601/

</VirtualHost>

C:¥Windows¥System32¥drivers¥etc¥hostsにlocalhostエントリがあり、ページとコンテンツを表示できる場合はすべて正常です。

192.168.12.20  admin.kibana.com  www.admin.kibana.com

今、本当の質問が出てきます。次のドメインを検索しても、そのWebページは引き続きサービスされています

kibana.com
admin-kibana-com

書き換えルールを使用すると役に立ちましたが、バックエンドサーバーでの実際のアプリケーションの提供が中断されました。プロキシと仮想ホスト構成のみを使用して操作を実行できますか?提案してください。よろしくお願いします。

答え1

仮想ホストが1つしかない場合、これはすべての要求の代替手段として使用されます。あなたは何ができますか?

  • 他のすべてのドメインに対してRewriteRuleを拒否します。もしあなたがうまくいかなかったら、おそらくあなたが間違っているかもしれません。

  • 別のデフォルトのVirtualHostは常に503を返します。

https://httpd.apache.org/docs/current/vhosts/examples.html#purename

関連情報