【问题标题】:.htaccess redirection none extension to .html.htaccess 重定向无扩展至 .html
【发布时间】:2013-11-23 05:32:33
【问题描述】:

我正在制作我的网站的新版本。谷歌已经抓取了我的网站。 所有页面的url都是这样写的:http://www.domain.com/url-page

在我的新版本网站中,网址为:http://www.domain.com/url-page.html

请问.htaccess 没有扩展为.html 的所有url 的301 重定向怎么办?

但是,如果是目录(以/结尾),则该规则不得将 .html 添加到 url 中

感谢您的帮助

【问题讨论】:

  • 也许您应该阅读 .htaccess 重写/重定向命令,尝试一下,在此处发布您的代码,然后告诉我们您遇到的问题。

标签: regex apache .htaccess mod-rewrite http-status-code-301


【解决方案1】:

将此代码放入您的DOCUMENT_ROOT/.htaccess 文件中:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(/|\..+)$
RewriteRule ^ %{REQUEST_URI}.html [L,NC,R]

【讨论】:

  • 感谢@anubhava 的帮助。我已经测试了代码。但是当它是一个目录时,我不想添加 .html domain.com/url-page 变成 domain.com/url-page/.html 我不想改变。
  • 我已将第三行改为:RewriteCond %{REQUEST_URI} !(/|\.*)$
  • 是的,这样更好
猜你喜欢
  • 2012-07-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-03
相关资源
最近更新 更多