bugfix> apache > 投稿

これは私の現在の設定です:

<VirtualHost *:443>
        ServerName www.product.com
        Redirect "/something" "https://www.anotherredirectwebsite.com.com/something-name-product"        
        RedirectPermanent / https://www.redirectsite.com/
        Include includes/product-config.inc
        # Enable SSL
        Include ssl-conf/product_ssl.conf
</VirtualHost>
# Redirect non-www to wwww
<VirtualHost *:443>
        ServerName product.com
        RedirectPermanent / https://www.product.com/
        Include ssl-conf/product_ssl.conf
</VirtualHost>
# Redirect non-www http to https
<VirtualHost *:80>
        ServerName product.com
        RedirectPermanent / https://www.product.com/
</VirtualHost>
# Redirect www http to https
<VirtualHost *:80>
        ServerName www.product.com
        Define proxy_host www.product.com
    RedirectPermanent / https://www.product.com/
</VirtualHost>

product.comにアクセスする全員が特定のWebサイトにリダイレクトされるようにします。ただし、誰かがproduct.com/somethingにアクセスした場合、別のWebサイトにリダイレクトされるようにしたいと思います。

問題は、product.com/anysubdirectoryがリダイレクトされないが、元のサイトが表示されることです。また、これにより/ somethingもリダイレクトされなくなります。

回答 1 件
  • これを試して

    <VirtualHost *:80>
        ServerName product.com
        ServerAlias www.product.com
        RedirectPermanent / https://www.product.com/
    </VirtualHost>
    <VirtualHost *:443>
        ServerName product.com
        ServerAlias www.product.com
        RewriteEngine On
        RewriteRule     ^something/(.*)          https://www.anotherredirectsite.com/something-name-product/$1  [R=301,L]
        RedirectPermanent / https://www.redirectsite.com/
        # SSL config
    </VirtualHost>
    
    

あなたの答え