16

自宅で 24 時間 365 日稼働している NAS/サーバーがあり、そこでさまざまなサービスを実行しています。現在、それを指すドメイン名を取得しており、さまざまなサービスのさまざまなポートを指すサブドメインを作成できるかどうか疑問に思っていました. 例えば:

現在、これらすべてのポートを IP が 192.168.0.104 の NAS/サーバーにポート転送する D-LINK ルーターが 1 台あります。

編集: サーバーは Ubuntu 12.04 を実行しています。

サブドメインを認識し、それに応じてトラフィックをルーティングできる、どのサービスまたはプロキシを実行する必要がありますか? または、Apache がリッスンしているポート 80 でこれらのサブドメインが着信するため、これを処理するために Apache 仮想ホストを使用できますか? または、仮想ホストはこのように機能しませんか?

情報、アイデア、またはヒントは役に立ちます。

4

1 に答える 1

23

これを行うには2つの方法があります。のVirtualHostセクションを使用することも、httpd.confで行うこともできます.htaccess。(サブドメインがWebサーバーと同じIPに解決されると仮定します)

httpd.conf

<VirtualHost *:80>
    ServerName subsonic.mydomain.com
    redirect / http://mydomain.com:4040/
</VirtualHost>

.htaccess

RewriteEngine on
RewriteCond %{HTTP_HOST} ^subsonic\.mydomain\.com$ [NC]
RewriteRule ^(.*)$ http://mydomain.com:4040/$1 [R=301]

ドキュメント:
-名前ベースの仮想ホストを作成するためのガイド -VirtualHostNameVirtualHost含むコア
-リダイレクト -mod_rewriteガイド

于 2012-10-04T17:55:24.190 に答える