【问题标题】:Redirect /index.php - wordpress重定向/index.php - wordpress
【发布时间】:2013-06-08 17:32:33
【问题描述】:

我希望如果有人链接到我的网站,可以说:www.bla.com/index.php,他将重定向到 www.bla.com。或者换句话说 - 删除 index.php。

这是我的 .htaccess 文件:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^bla\.com$ [NC]
RewriteRule ^(.*)$ http://www.bla.com/$1 [L,R=301]

如果有人获得链接:www.bla.com/camera/index.php - 它将重定向到 www.bla.com/camera/。

目前,网站本身运行良好,没有 index.php,但如果有人来自外部链接,我想删除 index.php。

【问题讨论】:

标签: php wordpress .htaccess


【解决方案1】:

这篇文章带有 WordPress 的标签。至少从 WP 3.0 开始,当打开永久链接时,您正在寻找和做的所有事情(规范域,没有 index.php 的规范 url)都内置在 WordPress 中......查看canonical redirects - 你会发现里面的逻辑。

【讨论】:

  • 帖子效果很好,没有 index.php。我想要什么 - 如果我给你链接到我的网站,例如:bla.com/index.php - 你将重定向到 bla.com
  • 除非你搞砸了重写规则和规范重定向,否则它已经可以工作了......你试过了吗? :-)
  • 这位 SEO 人显然不太了解 WordPress,或者(如果我可以补充的话)他在谈论什么(因为 WP 还发布了规范的 url 作为元标记,完全呈现了这一点没有实际意义)。 :-)
  • 好吧,我想你帮了我!
  • 顺便说一句,如果他建议您使用 /%postname%/ 或其他类似的东西作为您网站的永久链接,那么如果您开始添加,您将面临巨大的性能问题(以及削弱 SEO)不止几个静态页面。如果他这样做了,请忽略他并选择默认的基于日期/名称的规则,该规则执行良好,提供更好的 UI,并且不会触发 WP 中的详细重写规则。
【解决方案2】:

这样试试

.htaccess

RewriteEngine On

RewriteBase /
RewriteCond %{HTTP_HOST} ^bla\.com$ [NC]
RewriteRule ^(.*)$ http://www.bla.com/$1 [L,R=301]

RewriteRule ^index.php/(.*)$ /$1 [R=302,L]
RewriteRule ^(.*)$ index.php?/$1 [L]

【讨论】:

    【解决方案3】:

    试试这个

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    

    【讨论】:

      【解决方案4】:

      我相信即使涉及外部链接,OP 也希望阻止使用 index.php。在遵循另一个问题的建议之后。试试这个。

      RewriteRule ^(.*)/index.php$ http://www.bla.com/$1/ [L,R=301]
      

      【讨论】:

      • 谢谢。你明白我的问题,我试试这条线,但它仍然有 index.php。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-06-15
      • 1970-01-01
      • 2018-04-03
      • 1970-01-01
      • 2013-11-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多