SEO友好的URL工作,但主页不再工作

时间:2015-09-26 22:36:58

标签: .htaccess mod-rewrite seo rewrite

我想在我的网站上使用SEO友好的URL,所以我将以下代码写入我的.htaccess文件:

# url rewrite query string removal....
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?$ index.php?pagina=$1
# url rewrite query string removal....

或下面的代码(不在同一时刻使用,似乎两者对我来说都是一样的)

# url rewrite query string removal..
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/\.]+)/?$ index.php?pagina=$1
# TEST 
# url rewrite query string removal..

对于除1页之外的所有页面,两者都可以正常工作。如果我尝试访问域名,我的主页无效,例如www.example.com无效,但www.example.com/home正在运作。

我的问题是:如果符合以下条件,我如何才能拥有SEO友好主页:

原始网址为http://www.example.com/index.php?pagina=home如果我使用.htaccess代码,则为http://www.example.com/home,但由于我不喜欢www.example.com/home作为我的主页,因此我不会喜欢将主页重写到www.example.com,所有其他人都应该在www.example.com/filename,其中filename可以是/ pagina /文件夹中的任何文件名。

如何将主页设置为www.example.com而不是www.example.com/home,没有任何错误,什么.htaccess代码最适合我?

1 个答案:

答案 0 :(得分:0)

您可以对/home进行重定向,并在当前规则之前保留该规则。

这样做:

DirectoryIndex index.php
RewriteEngine On

RewriteRule ^home/?$ / [L,R=302,NC]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?$ index.php?pagina=$1 [L,QSA]
# url rewrite query string removal....