Nginx 配置将子域名重写为第一个 URI 段

Nginx 配置将子域名重写为第一个 URI 段

我无法执行以下 nginx.conf 重写:

test.mysite.info 

到:

mysite.info/test

这是我尝试过的:

server {
  server_name test.mysite.info;
  rewrite ^  https://mysite.info/test/$request_uri;
}

我知道我的 DNS(Route53 AWS)是正确的,因为:

  1. test.mysite.info 重定向到 mysite.info(只是不是 mysite.info/test)
  2. 我有一个 Apache 服务器来处理我的网站。com我可以使用 .htaccess 将其重写test.mysite.commysite.com/test

我没有对默认的 nginx.conf 安装做任何更改,所以我完全搞不懂为什么这么简单的事情不起作用。下面是我的完整 nginx.conf 文件如果有帮助的话。

答案1

您似乎忘记指定指示:

server {
    listen      80;
    server_name test.mysite.info;
    rewrite     ^ https://mysite.info/test$request_uri;
}

可是等等,return可能比rewrite

server {
    listen      80;
    server_name test.mysite.info;
    return      301 https://mysite.info/test$request_uri;
}

相关内容