我在这里遇到了突发问题。由于一个特定的重写规则,我在htacces文件中的重定向将无法工作。至少,这就是我的想法。最大的问题是如何解决这个问题。如果你们中的一个能帮我解决这个问题,我将非常感激。
我想重定向(301)以下网址:
“www.samplesite.nl/sample-2012.html”至“www.samplesite.nl/sample-2014.html”
现在通常我会通过在htacces文件中制作一个重定向规则来解决这个问题,如下所示:
“RedirectMatch 301 /sample-2012.html(.*)http://www.samplesite.nl/sample-2014.html $ 1”
但是当我在本网站的htacces文件中执行此操作时,我在浏览器中获得以下URL
“http://www.samplesite.nl/sample-2014.html?html_name=sample-2012.html”
所以基本上“?html_name = sample-2012.html”这个部分不应该在URL中让这个东西工作就像它应该对我有用。
现在有困难:在htacces文件中,还有一个重写规则导致了这一点,至少我认为。它看起来像这样:
“RewriteRule ^([A-Za-z0-9 _-] +)。html $ page.php?html_name = $ 1.html&%{QUERY_STRING} [L]”
我自己没有编程,但我认为这个规则是为了从我的数据库中获取html信息到page.php。问题是,如果我删除此(最后提到的)规则,页面将被重定向。但是我在所有的html页面上都得到了404。我搜索了一整天,但找不到任何有用的东西,或任何看似解决方案的东西。所以我希望这边的人可以帮助我。期待任何评论。
先谢谢!!
映入眼帘,
马克
答案 0 :(得分:0)
尝试使用重写规则进行重定向:
RewriteRule ^sample-2012.html(.*) http://www.samplesite.nl/sample-2014.html$1 [R=301,L]
R设置响应,L使其成为最后一次重写(如果匹配)
编辑:然后把它放在另一个重写之前。