Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.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
Regex 使用正则表达式在.htaccess中替换/重定向_Regex_Wordpress_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

Regex 使用正则表达式在.htaccess中替换/重定向

Regex 使用正则表达式在.htaccess中替换/重定向,regex,wordpress,apache,.htaccess,mod-rewrite,Regex,Wordpress,Apache,.htaccess,Mod Rewrite,我已将我的网站从joomla转移到wordpress。大多数旧的链接都被重定向了,但我得到了一些奇怪的404 我想要的是能够重新定向: 为此: 这是我在.htaccess文件中使用的代码: RewriteRule ^component/content/(.+)$ pcsteps.gr/$1 [R=301,L] 这段代码删除了URL的/component/content/part,但剩下的是“article?id=575:如何指导无线网络安全” 如何更改代码以同时删除“article?id=”

我已将我的网站从joomla转移到wordpress。大多数旧的链接都被重定向了,但我得到了一些奇怪的404

我想要的是能够重新定向:

为此:

这是我在.htaccess文件中使用的代码:

RewriteRule ^component/content/(.+)$ pcsteps.gr/$1 [R=301,L]
这段代码删除了URL的/component/content/part,但剩下的是“article?id=575:如何指导无线网络安全”


如何更改代码以同时删除“article?id=”,保留编号并将“:”替换为“-”?

将此代码放入您的
文档根目录/.htaccess
文件中:

RewriteEngine On

RewriteCond %{QUERY_STRING} (?:^|&)id=([0-9]+):([^&]+)
RewriteRule ^component/content/article/?$ /%1-%2? [L,NC,R=301]

将此代码放入
文档\u ROOT/.htaccess
文件:

RewriteEngine On

RewriteCond %{QUERY_STRING} (?:^|&)id=([0-9]+):([^&]+)
RewriteRule ^component/content/article/?$ /%1-%2? [L,NC,R=301]

您尝试了哪些内容成功删除了“/component/content/”,为什么不删除其余的内容?RewriteRule ^component/content/(.+)$[R=301,L]将删除它们,但我只剩下“article?id=575:如何指导无线网络安全”了“您尝试了哪些内容成功删除了“/component/content/”为什么它不删除其余部分呢?RewriteRule^component/content/(.+)$[R=301,L]会删除它们,但我会留下“article?id=575:如何指导无线网络安全”抱歉,它不起作用。我错过了
文章
部分。现在修复了,请你试试。现在它删除了组件/内容/文章和id=,但它没有用-I get ok替换:在我的答案中进一步更新。现在试试。谢谢,它很管用。如果我将规则重写为Rule(.*)/?$/%1-%2,可以吗?[L,NC,R=301],所以它会改变相同类型的其他组合?对不起,它不起作用。我错过了
文章
部分。现在修复了,请你试试。现在它删除了组件/内容/文章和id=,但它没有用-I get ok替换:在我的答案中进一步更新。现在试试。谢谢,它很管用。如果我将规则重写为Rule(.*)/?$/%1-%2,可以吗?[L,NC,R=301],那么它会改变相同类型的其他组合吗?