en
とfr
のリダイレクトは、return
ディレクティブで簡単に実行できます。 www.domain1.es
ドメインのserver
ブロックでは、あなたが試みることができる:このプレフィックスの場所を作る^~
修飾子は、同じレベルの任意の正規表現の場所より優先されます
location ^~ /en { return 301 $scheme://www.domain2.eu$request_uri; }
location ^~ /fr { return 301 $scheme://www.domain2.eu$request_uri; }
お知らせ。詳細は、this documentを参照してください。
URIから接頭辞/es
を削除するには、書き換えが必要です。あなたはこれらを試みることができる:
www.domain1.es
ドメインのserver
ブロックで:www.domain2.eu
ドメインのserver
ブロックで
rewrite ^/es(.*)$ $1 permanent;
:
rewrite ^/es(.*)$ $scheme://www.domain1.es$1 permanent;
上記のいずれかの内側に配置することができます効率を改善するためのブロック(しかし、私はそれが必要ではないと思う)。また、後者は接頭辞/es
を削除する必要はありません(これは他のサーバーで行われるためです)。
ありがとうございます! 最初の部分が機能しました! rewrite ^/es(。*)$ $ 1 permanent;はループリダイレクトを行いましたが、コードで修正する必要があるPrestashopの問題です。 –