.htaccess 由于htacces文件中的特定重写规则,重定向出现问题

.htaccess 由于htacces文件中的特定重写规则,重定向出现问题,.htaccess,redirect,rewrite,.htaccess,Redirect,Rewrite,我有个头疼的问题。由于一个特定的重写规则,我在htacces文件中的重定向将无法工作。至少,我是这么想的。最大的问题是如何解决这个问题。如果你们中有人能帮我解决这个问题,我将非常感激 我想重定向(301)以下URL: “www.samplesite.nl/sample-2012.html”至“www.samplesite.nl/sample-2014.html”‎" 现在,通常我会通过在htacces文件中制定重定向规则来解决此问题,如下所示: “重定向匹配301/sample-2012.htm

我有个头疼的问题。由于一个特定的重写规则,我在htacces文件中的重定向将无法工作。至少,我是这么想的。最大的问题是如何解决这个问题。如果你们中有人能帮我解决这个问题,我将非常感激

我想重定向(301)以下URL:

“www.samplesite.nl/sample-2012.html”至“www.samplesite.nl/sample-2014.html”‎"

现在,通常我会通过在htacces文件中制定重定向规则来解决此问题,如下所示:

“重定向匹配301/sample-2012.html(.*)$1”

但是当我在这个网站的htacces文件上这样做的时候,我会在浏览器中得到以下URL

“”

因此,基本上,URL中的“?html_name=sample-2012.html”部分不应该让这个东西像我应该做的那样工作

现在困难来了:在htacces文件中,至少我认为还有一个重写规则导致了这一点。它看起来像这样:

“重写规则^([A-Za-z0-9_-]+).html$page.php?html_name=$1.html&%{QUERY_STRING}[L]”

我自己并没有编写这个程序,但我认为这个规则是为了将html信息从我的数据库中获取到page.php中规则,页面被重定向了。但是我所有的html页面上都有404。我搜索了一整天,但找不到任何有用的东西,或者任何看起来像是解决方案的东西。所以我希望这里的任何人都能帮我。期待任何评论

谢谢转发

问候


Marc

尝试使用重写规则重定向:

RewriteRule ^sample-2012.html(.*) http://www.samplesite.nl/sample-2014.html$1 [R=301,L]
R设置响应,L使其成为最后一次重写(如果匹配)


编辑:当然,把它放在另一次重写之前。

嗨,米克尔,非常感谢你快速而清晰的回答!!这似乎很好;)你让我开心,伙计。这个解决方案在搜索引擎优化方面也可以吗?就像我说的重定向一样。你好,这个R=301的重写规则是重定向,就像重定向匹配你的位置一样使用。在任何意义上都是100%相同。嗨,米克尔,再次感谢你的回复。我得到了我需要的所有信息;)干杯!