サイトに次のようなさまざまなサブドメインを設定したいと考えていますbiology.mysite.com
。
現在、nginx.conf に次のものがあります。
server {
listen 80;
server_name biology.mysite.com;
return 301 https://mysite.com/tags/biology$request_uri;
}
このコードは、ブラウザを にポイントするとbiology.mysite.com
、 にリダイレクトされhttps://mysite.com/tags/biology
、正しい生物学コンテンツが読み込まれるという点で機能します。
ただし、 URLをリダイレクトするのではなく、サブドメインをURLとして保持したい.
したがって、この要点に基づいて上記を以下のコードに置き換えましたが、効果はありません (を指すことはbiology.mysite.com
単に に移動することを意味しますmysite.com
):
if ($host ~* ^www\.([a-z0-9]*)\.(mysite\.com) )
{
set $tagname $1;
set $host_without_www $2;
rewrite ^/(.*)$ $scheme://$tagname.$host_without_www/ permanent;
}
if ($host ~* ^([a-z0-9]+)\.(mysite\.com))
{
set $tagname $1;
set $host_without_www $2;
rewrite ^/$ /index.php/tags/index/ last;
rewrite ^/(.+)$ /index.php/$1 last;
}
考え?
Serverfaultではなくここに投稿した理由に注意してください。b/c 私はCodeigniterフレームワーク (独自のルーティング スキームを持つ) を使用しているため、答えには NGINX と Codeigniter の知識が必要になる場合があります。