Php URL重定向使用htaccess文件,URL友好到URL友好重定向

Php URL重定向使用htaccess文件,URL友好到URL友好重定向,php,.htaccess,redirect,Php,.htaccess,Redirect,我有一个要重定向的url 旧网址-> 新网址-> 在谷歌上,我们到处都有旧的url,我们用新的布局和CMS更改了网站,所以我们重定向了我们的域名old-website.com->new-website.com。这很好,但我不确定如何才能将此参数传递到新店,有什么帮助吗 如果这是不可能的,那么我们可以加载url上的内容吗 所以,当用户使用旧url访问我的站点时,在后端系统中,htaccess将设法在内部跳过products关键字并显示相应的页面 重写规则^/?products/[^/d]+/?$/

我有一个要重定向的url

旧网址->

新网址->

在谷歌上,我们到处都有旧的url,我们用新的布局和CMS更改了网站,所以我们重定向了我们的域名old-website.com->new-website.com。这很好,但我不确定如何才能将此参数传递到新店,有什么帮助吗

如果这是不可能的,那么我们可以加载url上的内容吗

所以,当用户使用旧url访问我的站点时,在后端系统中,htaccess将设法在内部跳过products关键字并显示相应的页面

重写规则^/?products/[^/d]+/?$/$1[L,QSA]

重写规则^products/?$$1/新页面$2[R=301,L]

重写规则^products/\d+?$/$1[L]

重写规则^[^?]*index.php?路由=$1[L,QSA]

重写规则^./products/$$1/$2[R=301,L]

重写规则^products/*$/$1[R=301,L]

重写规则^products/*$/%1[L,R=301]

我尝试了所有这些,但我得到404以上所有。当我打开此url时,重写引擎处于打开状态,它工作正常

简言之,结论是:

我只需要从URL中删除产品并发送参数

如果有人开了门,那么他们必须去看没有产品的东西,就是这样


提前感谢。

首先,请确保已打开“重写”模块,可以使用phpinfo进行检查;作用

如果该选项处于启用状态,则放置在项目主公用文件夹的.htaccess文件中的此代码应能正常工作:

RewriteEngine On
RewriteRule ^products/(.*)$ https://www.new-website.com/$1 [R=301,L]

请向我们展示您尝试过的内容,或者至少展示您迄今为止的研究成果。RewriteRule^.*/products/*$$1/$2[R=301,L]RewriteRule^ products/*$/$1[R=301,L]RewriteRule^ products/*$/%1[L,QSA]RewriteRule^/$1[L,QSA]RewriteRule^ products/$$$1/新页面$2[R=301,L]RewriteRule^ products/\d+$/$1[L]我尝试了所有这些,但仍然不起作用…请不要在评论中发布这么长的代码片段,这很难阅读-改为编辑您的问题,并在那里正确格式化它们。你还需要解释“不工作”的真正含义。您是否收到一个简单的404或其他类型的错误…?另外,您的设置是什么,您是否将这两个域路由到同一个目录?如果你想从旧域重写到新域,那么你不能使用相对路径进行替换,你需要一个包含“新”域的绝对URL。请检查帖子,我更新了它。当我尝试此代码时,它仍然转到404,你请求的页面找不到!主要问题是:您是被重定向到new-website.com还是在旧的-website.com域上看到404?rewrite mod在旧服务器/域上工作吗?您能够验证这一点吗?您是否可以尝试类似RewriteRule ^.*$/[R=301,L]的方法,在RewriteEngine打开后立即将其放置?若mod rewrite按预期工作,那个么对旧域的任何请求都会导致重定向循环。如果这没有发生,那么你应该首先关注重写模块的工作。我更改了我的CMS域,但CMS上的url结构不同,所以我需要采用新的url,并将所有url重定向到适当的url,这样,域将是相同的,我只想从url中删除产品,例如必须重定向到,然后需要重写规则^Products/*$$1[R=301,L],但您仍然需要首先确保mod rewrite/.htaccess文件正常工作。