2011-12-27 5 views
1

Мне нужна помощь с переписыванием URL-адресов htaccess для моего сайта..htaccess правило перенаправления для сайта

Проблема в том, что только первая страница в какой-то категории имеет хороший URL-адрес без крутых ссылок, а на всех других страницах есть грязные URL-адреса.

Например, первая страница имеет ссылку так:

http://www.my-site-name.com/Category-name/Subcategory-name/ 

Но страница 2, а также любые другие страницы, как это:

http://www.my-site-name.com/showcat.php?cat=Category-name&subcat=Subcategory-name&page=2 
http://www.my-site-name.com/showcat.php?cat=Category-name&subcat=Subcategory-name&page=3 

Итак, мне нужно какое-нибудь правило SEO дружественных Htaccess перенаправление на сделать URL-адреса, как это:

http://www.my-site-name.com/Category-name/Subcategory-name-page-X/ 

или как этот

http://www.my-site-name.com/Category-name/Subcategory-name/X/ 

Но, возможно, я хотел бы сначала узнать больше.

Это часть .htaccess для этого: (я просто добавил полное содержание, может быть, есть что-то больше об этом

## For top rated items 
RewriteRule ^top/page/(.*)/$ top.php?page=$1 [L] 

## For latest items 
RewriteRule ^latest/recent-page-(.*)/$ latest.php?page=$1 [L] 

## For show most rated - most clicked - most downloaded and most searched items 
RewriteRule ^most-rated.html$ showmost.php?type=1 [L] 
RewriteRule ^most-clicked.html$ showmost.php?type=2 [L] 
RewriteRule ^most-downloaded.html$ showmost.php?type=3 [L] 
RewriteRule ^most-Searched.html$ showmost.php?type=4 [L] 

## For showing category of item 
RewriteRule ^(.*)/$ showcat.php?cat=$1 [L] 

## For showing subcategory of item 
RewriteRule ^(.*)/(.*)/$ showcat.php?cat=$1&subcat=$2 [L] 

## For showig item 
RewriteRule ^(.*)/(.*)/(.*).html$ show.php?cat=$1&sub_cat=$2&img=$3&rewrite=true [L] 

## this section should be inserted just after the showing item rule above 
#if the query string has cat, sub_cat and Img 
RewriteCond %{QUERY_STRING} ^cat=(.+)&sub_cat=(.+)&img=(.+)$ [NC] 
#and it is for resource show.php, then 301 redirect to Keyword rich URL 
RewriteRule ^show\.php$ http://www.my-site-name.com/%1/%2/%3.html? [NC,L,R=301] 
+0

. Я новичок здесь. Пожалуйста, расскажите мне, как я могу принять правильный ответ, что я должен делать? –

+2

Слева от ответов есть серая галочка. Просто нажмите на один рядом с вопросом, который ответил на ваш вопрос (лучше всего). – Gerben

ответ

2

я прибрал ее немного

#don't rewrite if file or dir exists 
RewriteCond %{REQUEST_FILENAME} -d [OR] 
RewriteCond %{REQUEST_FILENAME} -f 
RewriteRule .* - [L] 

## For showing category of item 
RewriteRule ^([^/]*)/$ showcat.php?cat=$1 [L] 

## For showing paged subcategory of item 
RewriteRule ^([^/]*)/([^/]*)-page-([0-9]+)/$ showcat.php?cat=$1&subcat=$2&page=$3 [L] 

## For showing subcategory of item 
RewriteRule ^([^/]*)/([^/]*)/$ showcat.php?cat=$1&subcat=$2&page=1 [L] 

## For showig item 
RewriteRule ^([^/]*)/([^/]*)/([^/]*).html$ show.php?cat=$1&sub_cat=$2&img=$3&rewrite=true [L] 
+0

Это то же самое, он работает одинаково. –

+0

@ user1038179 Что вы имеете в виду? Третье правило должно делать то, что вы хотели. – Gerben

+0

Я только что добавил полный код .htaccess для моей CMS, возможно, он скажет вам что-то еще. Я также пробовал ваш ответ, но URL-адреса одинаковы, у меня все еще нет хороших URL-адресов. У меня все еще есть это: 'http: //www.my-site-name.com/showcat.php? Cat = Category-name & subcat = Subcategory-name & page = 2' –

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