【问题标题】:mod_rewrite to redirect 301 all urls inside a folder after a domain changemod_rewrite 在域更改后重定向 301 文件夹内的所有 url
【发布时间】:2017-01-26 16:09:56
【问题描述】:

我需要在folder1内重定向301这个域的所有页面

http://domain.com/folder1/xxxxx/page1

/xxxxx/ 是任意文件夹

https://newdomain.com/folder2/page1

你能帮忙吗? 谢谢

【问题讨论】:

  • 当然,我们可以帮助修复您的代码,但前提是您发布到目前为止的代码。
  • 请注意,SO 不是免费的编码服务。我们不是来为你做你的工作。我们在这里帮助您解决特定问题您遇到在您自己的代码中。所以自己开始吧,如果你遇到严重的问题,那么是时候来到这里,发布你的代码并指出你遇到的问题。
  • 当然。到目前为止,我编写了此代码,但无法正常工作。我无法摆脱 /xxxxx/ 文件夹 RewriteEngine On RewriteBase / RewriteRule ^folder1/(.*)$ newdomain.com/folder2/$1 [L,R=301]
  • 请不要在 cmets 中添加额外的细节,这很难阅读。您的问题下方有一个edit 链接。 使用它

标签: apache mod-rewrite


【解决方案1】:

我对您的代码做了一些小的修改,应该可以帮助您:

<IfModule mod_rewrite.c> 
  RewriteEngine On 
  RewriteBase / 
  RewriteRule ^/?folder1/[^/]+/(.*)$ https://newdomain.com/folder2/$1 [L,R=301]
</IfModule>

还有一个一般提示:您应该始终喜欢将此类规则放在 http 服务器主机配置中,而不是使用动态配置文件(“.htaccess”)。众所周知,这些文件容易出错,难以调试,而且它们确实会降低服务器的速度。它们仅在您无法控制主机配置的情况下(阅读:非常便宜的托管服务提供商)或如果您的应用程序依赖于编写自己的重写规则(这是一个明显的安全噩梦)提供它们作为最后一个选项)。

【讨论】:

  • 很高兴能帮上忙!请不要忘记投票并接受这个答案 ;-) 玩得开心!
猜你喜欢
  • 1970-01-01
  • 2013-10-05
  • 2019-04-29
  • 2013-06-29
  • 2017-05-26
  • 2015-12-04
  • 1970-01-01
  • 1970-01-01
  • 2014-07-19
相关资源
最近更新 更多