ServerName
ポート番号の異なる複数の同じ仮想ホストを設定する予定です。
たとえば、
http://a.example.com:3001
http://a.example.com:3002
http://a.example.com:3003
https://a.example.com:3001
(ポートがあるhttps)などにリダイレクトする必要があります。
次の条件を作成できます。ポートが80+300Xの場合、リダイレクトhttps//a.example.com:300X
(意味https+3001
)?
答え1
たぶん、すべてのポートをリッスンし、3001ポートの仮想ホストを明示的に定義することでこの動作を達成できます。このように:
<VirtualHost _default_:3001>
DocumentRoot "/www/default3001"
# main app here
</VirtualHost>
<VirtualHost _default_:*>
DocumentRoot "/www/default"
# do the redirect here...
</VirtualHost>
ただし、必要なすべてのポートでリッスンするようにサーバーを設定する必要があります。また、apache httpdにはポート範囲設定がないため、各ポートは次のように明示的に設定する必要があります。
Listen 80
Listen 81
# lots of ports here....
Listen 3000