我必須將使用 RewriteCond 和 RewriteRule 的 Apache 反向代理配置轉換為 Nginx。
如何將這樣的內容轉換為 nginx 設定?
(這是在主/唯一<VirtualHost *:443>
區塊中)
RewriteCond %{HTTP_HOST} ^stagingapi$ [NC]
RewriteRule ^/(.*) https://staging-zone.mydomain.com/$1 [R,L]
答案1
RewriteRule 的第一個參數正規表示式匹配所有以 URI 開頭的 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