php.htaccesshttp-redirecthttp-status-code-301question2answer

how to change url structure with 301 code q2a


I have a problem with duplicate contents in search engine .

I can access a page in q2a web site using both of these url's !

http://www.domain.com/index.php?qa=1306&qa_1=title

http://www.domain.com/1306/title

I want to redirect the first one to second 1 how ca I do it ?

I tried codes in these page and other things too but none of them works :(

htaccess for changing index.php?ms=user to /user

my current htaccess is :

DirectoryIndex index.php
<IfModule mod_rewrite.c>
RewriteEngine On
#RewriteBase /
RewriteCond %{REQUEST_URI} ^(.*)//(.*)$
RewriteRule . %1/%2 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ index.php?qa-rewrite=$0&%{QUERY_STRING} [L]
# Redirect non-www to www:
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
Redirect 301 /math/ http://math.domain.com/

</IfModule>

Solution

  • I used these and It seems work fine :

    DirectoryIndex index.php
    <IfModule mod_rewrite.c>
    RewriteEngine On
    #RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^users/?$ /index.php?qa=users [R=301,L]
    RewriteRule ^tags/?$ /index.php?qa=tags [R=301,L]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !^/qa-theme/.*
    RewriteCond %{REQUEST_URI} !^/qa-content/.*
    RewriteCond %{REQUEST_URI} !^/analytic/.*
    RewriteCond %{REQUEST_URI} !^/qa-plugin/.*
    RewriteCond %{REQUEST_URI} !^/help_files/.*
    RewriteRule ^(.*)/(.*)/?$ /index.php?qa=$1&qa_1=$2 [R=301,L]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !^/qa-theme/.*
    RewriteCond %{REQUEST_URI} !^/qa-content/.*
    RewriteCond %{REQUEST_URI} !^/analytic/.*
    RewriteCond %{REQUEST_URI} !^/qa-plugin/.*
    RewriteCond %{REQUEST_URI} !^/help_files/.*
    RewriteRule ^(.*)/(.*)/(.*)/?$ /index.php?qa=$1&qa_1=$2&qa_2=$3 [R=301,L]
    # Redirect non-www to www:
    RewriteCond %{HTTP_HOST} !^www\. [NC]
    RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
    Redirect 301 /math/ http://math.domain.com/
    
    </IfModule>