【问题标题】:SEO friendly URLs IS working but homepage doesn't work anymoreSEO 友好的 URL 有效,但主页不再有效
【发布时间】:2015-12-24 11:57:24
【问题描述】:

我想在我的网站上使用 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 可以正常工作。

我的问题是:如果:

原始 url 是 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 代码最适合我?

【问题讨论】:

  • @SwiftArchitect 代码标记用于标记代码,而不是首字母缩略词、缩写词、引号或任何其他您想引起注意但不是 代码 的内容。
  • 我的错误。感谢您直言不讳。
  • 感谢您提供有关何时不使用代码标签的信息,我会记住并且不再使用代码标签来关注任何单词或文本。我将仅将代码标签用于代码,再次感谢!

标签: .htaccess mod-rewrite seo rewrite


【解决方案1】:

您可以为/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....

【讨论】:

    猜你喜欢
    • 2012-02-13
    • 2014-02-26
    • 1970-01-01
    • 1970-01-01
    • 2016-01-18
    • 2019-11-08
    • 2014-07-09
    • 1970-01-01
    • 2011-08-25
    相关资源
    最近更新 更多