美好的一天。目前我正在忙着改造网站。无法解决几个问题。
1.我需要更改网址结构 - 例如链接到«somepage»,如:
site.com/index.php?page=somepage
现在看起来像:
site.com/someCategory/somepage
据我所知,为了不丢失«somepage»的页面排名,我需要进行301重定向。据我所知,它看起来像这样:
Redirect 301 site.com/index.php?page=somepage site.com/someCategory/somepage
如果有多个页面(大约400页),那么它将如下所示:
Redirect 301 site.com/index.php?page=somepage site.com/someCategory/somepage
Redirect 301 site.com/index.php?page=somepage1 site.com/someCategory/somepage1
Redirect 301 site.com/index.php?page=somepage2 site.com/someCategory/somepage2
Redirect 301 site.com/index.php?page=somepageN site.com/someCategory/somepageN
2.我需要从www重定向到非www。它看起来像这样:
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
3.此外,目前我的.htaccess文件还有创建漂亮网址的规则:
DirectoryIndex index.php
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)/(.+)/?$ index.php?category=$1&page=$2
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)/?$ index.php?category=$1
问题是:
答案 0 :(得分:1)
RewriteEngine On
# www to non-www
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(.*)$ http://domain.com/$1 [R=301,L]
# SEO format to dynamic format (200, not 301)
RewriteRule ^someCategory/([^/]+)/?$ /index.php?page=$1 [QSA]
# 'someCategory' is fixed text
someCategory 会有所不同吗?将它作为另一个Query String变量是否有用?
#3与#1的区别如何?您没有执行301映射SEO格式到内部动态格式。 #3更具SEO动态吗?你怎么分辨#1和#3?