Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mod rewrite RewriteMap从url的结尾选择一个ID,如果它匹配,则用另一个url结尾替换url结尾_Mod Rewrite_Url Rewriting_Url Rewrite Module - Fatal编程技术网

Mod rewrite RewriteMap从url的结尾选择一个ID,如果它匹配,则用另一个url结尾替换url结尾

Mod rewrite RewriteMap从url的结尾选择一个ID,如果它匹配,则用另一个url结尾替换url结尾,mod-rewrite,url-rewriting,url-rewrite-module,Mod Rewrite,Url Rewriting,Url Rewrite Module,我想如果有人能帮我,我会写在这里,我已经试着让这个东西工作了几天,但我似乎真的不明白我应该如何配置RewriteMap来获得我需要的东西 RewriteEngine On RewriteMap myredirects txt:/var/www/redirects.txt RewriteCond %{QUERY_STRING} ^id\=([0-9]+) RewriteRule ^/story/(.*)$ ${myredirects:%{REQUEST_URI}} [L,R=301] 像这样的东

我想如果有人能帮我,我会写在这里,我已经试着让这个东西工作了几天,但我似乎真的不明白我应该如何配置RewriteMap来获得我需要的东西

RewriteEngine On
RewriteMap myredirects txt:/var/www/redirects.txt
RewriteCond %{QUERY_STRING} ^id\=([0-9]+)
RewriteRule ^/story/(.*)$ ${myredirects:%{REQUEST_URI}} [L,R=301]
像这样的东西我已经配置好了,但是我不知道如何才能让配置正常工作。到目前为止,这还不能确定

我需要的是我有一个网页,即将删除其内容,我需要重定向到另一个页面,而不是404。 我有一个网站:book.com/story/[dynamicurl from page]?id=654672

我想对其进行配置,以便当url的结尾与RewriteMap文本中的结尾匹配时,它将重写为book.com/firm?f=1233456

我的redirects.txt的设置与此非常相似 /故事/示例?id=59368/公司?f=1154657

是否可以使用此模块执行我需要的操作? 任何帮助都将不胜感激,我将尽我所能努力自己进步,但帮助将是巨大的

主要问题是RewriteMap在“id=”之前有识别“问号”的问题,因此我不能简单地在站点之间重写,我需要一个解决方法。它可以重定向到带有问号的站点,但不能从问号重定向到站点

谢谢你的阅读!
DeltX5

RewriteCond${myredirects:%{REQUEST_URI}}.+RewriteCond%{QUERY_STRING}.*id=${myredirects:}RewriteRule^${myredirects:%{REQUEST_URI}}[L,R=301]
这次我尝试了一种不同的方法,希望这件事能奏效。
RewriteCond${myredirects:{myredirects:{REQUEST_URIRewriteRule^${myredirects:%%{REQUEST_URI}}[L,R=301]
这次我尝试了一种不同的方法,希望能让这件事起作用。