2015-10-13 3 views
2

У меня проблема с моим перенаправлением.Перенаправление 301 htaccess работает только с slash Laravel

я хочу перенаправлять domain.ir к domain.com нормально все нормально, но когда

Я хочу все запросы от domain.ir перенаправлять DOMAIN.COM только работу, когда я закончу URLs с косой чертой

domain.ir/wiki/ ---> domain.com/wiki

но

domain.ir/ вики ---> domain.com/index.php

<IfModule mod_rewrite.c> 
    <IfModule mod_negotiation.c> 
     Options -MultiViews 
    </IfModule> 

    RewriteEngine On 

    RewriteCond %{THE_REQUEST} /index\.php [NC] 
    RewriteRule ^(.*?)index\.php$ /$1 [L,R=302,NC,NE] 

    RewriteCond %{HTTP_HOST} ^www.digibaj.com$ [NC] 
    RewriteRule ^(.*)$ http://digibaj.com/$1 [R=301,L] 

    RewriteCond %{HTTP_HOST} ^www.digibaj.ir$ [NC] 
    RewriteRule ^(.*)$ http://digibaj.com/$1 [R=301,L] 

    RewriteCond %{HTTP_HOST} ^digibaj.ir$ [NC] 
    RewriteRule ^(.*)$ http://digibaj.com/$1 [R=301,L] 

    # Redirect Trailing Slashes... 
    RewriteRule ^(.*)/$ /$1 [L,R=301] 

    # Handle Front Controller... 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule^index.php [L] 
</IfModule> 

Digibaj.com

Любая идея ?!

ответ

2

Re-фактор и изменить порядок правил, как это:

Options -MultiViews 
RewriteEngine On 

RewriteCond %{HTTP_HOST} ^www\.digibaj\.com$ [NC,OR] 
RewriteCond %{HTTP_HOST} ^(www\.)?digibaj\.ir$ [NC] 
RewriteRule ^(.*)$ http://digibaj.com/$1 [R=301,L] 

RewriteCond %{THE_REQUEST} /index\.php [NC] 
RewriteRule ^(.*?)index\.php$ /$1 [L,R=302,NC,NE] 

# Redirect Trailing Slashes for non-directories 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.+?)/$ /$1 [L,R=301] 

# Handle Front Controller... 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule^index.php [L] 

Убедитесь, чтобы проверить его после того, как очистить кэш браузера.

+0

Но почему digibaj.ir/wiki перенаправляется на digibaj.com?! –

Смежные вопросы