.htaccess简单重定向不起作用

.htaccess简单重定向不起作用,.htaccess,.htaccess,我想将旧的内部页面重定向到我的主页。我的.htacess文件的开头如下: RewriteEngine On RewriteBase / Redirect 301 /int/index.php?m=help https://website.com 进一步说,我有更多的规则来强制SSL和不使用“www”,这些规则运行良好,但由于某些原因,重定向指令被忽略,客户端可以在不重定向的情况下打开页面。我怀疑这是由于?m=help造成的。我会使用这样的重写规则: RewriteCond %{QUERY_S

我想将旧的内部页面重定向到我的主页。我的.htacess文件的开头如下:

RewriteEngine On
RewriteBase /

Redirect 301 /int/index.php?m=help https://website.com

进一步说,我有更多的规则来强制SSL和不使用“www”,这些规则运行良好,但由于某些原因,
重定向指令被忽略,客户端可以在不重定向的情况下打开页面。

我怀疑这是由于
?m=help
造成的。我会使用这样的
重写规则

RewriteCond %{QUERY_STRING} m=help
RewriteRule index\.php https://website.com? [R=301,L]
请注意:

  • 那个?在重写路径的末尾,需要切断
    ?m=help
    ;如果省略它,将重定向到
    https://website.com?m=help
  • [R=301,L]
    的意思是:“重定向到页面”和(L)“应用此规则后停止重写引擎”,也就是说,不会对字符串应用额外的重写
    https://website.com?

  • 回答得好!谢谢你的补充说明。@amaslu不客气:)