我已经使用 Appserv 一段时间了,现在转到 Nginx。当我在 Appache 下运行我的网站时,我在 .htaccess 文件中进行了此配置,以便将子域链接到子目录。
#Redirect API subdomain to API folder
RewriteCond %{HTTP_HOST} ^api\.domain\.com$
RewriteCond %{REQUEST_URI} !^/request/
RewriteRule (.*) /request/$1
我尝试将此配置添加到 nginx.conf 文件中以执行相同操作:
location ^~ /request/ {
rewrite ^/request/(.*) http://api.example.com/$1 permanent;
}
似乎不起作用,因为我被重定向到主域 URL。如何在 Nginx 中做到这一点?
答案1
有几种不同的方法可以做到这一点,但我更喜欢易于阅读的方法:
location / {
if ($http_host = api.domain.com) {
try_files /request$uri =404;
}
}