我必须将使用 RewriteCond 和 RewriteRule 的 Apache 反向代理配置转换为 Nginx。
我怎样才能将这样的内容转换为 nginx 配置?
(这是在主/唯一<VirtualHost *:443>
块中)
RewriteCond %{HTTP_HOST} ^stagingapi$ [NC]
RewriteRule ^/(.*) https://staging-zone.mydomain.com/$1 [R,L]
答案1
RewriteRule 的第一个参数是正则表达式,它匹配以 开头的所有 URI /
,第二个参数是替换,它将“stagingapi”站点(R 标志)重定向到https://staging-zone.mydomain.com/
尝试类似以下操作:
server{
listen 443;
server_name stagingapi;
return 301 $scheme://staging-zone.mydomain.com$request_uri permanent;
}
如果您想要一直重定向到 HTTPS,以实现与 apache 相同的行为,您可以将其替换$scheme
为。https