mod_rewrite 将旧请求 url 转换为新请求 url
.hello - 我需要转换旧的 url 请求以适应新的网站内容;
即“艺术咨询”曾经是“咨询”,那么我如何获取“咨询”网址并将其转换为“艺术咨询”
我的规则如果^咨询$制作^艺术咨询$并继续执行以下规则..任何
RewriteRule ^art-consultancy$ consultancy-02.php [L]
RewriteRule ^art-consultancy/$ consultancy-02.php [L]
RewriteRule ^art-consultancy/([a-zA-Z0-9\-]+)$ consultancy-02.php?section=$1 [L]
RewriteRule ^art-consultancy/([a-zA-Z0-9\-]+)/$ consultancy-02.php?section=$1 [L]
#
RewriteRule ^art-consultancy/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)$ article-01.php [L]
RewriteRule ^art-consultancy/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/$ article-01.php [L]
帮助表示赞赏!
附:尝试重定向/咨询/艺术咨询但没有任何运气。认为这个方法需要一个实际的文件?
最好的,直流
.hello - i need to transform old url requests to fit into the new sites content;
ie 'art-consultancy' used to be 'consultancy' so how can i grab 'consultancy' urls and transform them into 'art-consultancy'
MY RULE if ^consultancy$ MAKE ^art-consultancy$ and continue to the rules below...
RewriteRule ^art-consultancy$ consultancy-02.php [L]
RewriteRule ^art-consultancy/$ consultancy-02.php [L]
RewriteRule ^art-consultancy/([a-zA-Z0-9\-]+)$ consultancy-02.php?section=$1 [L]
RewriteRule ^art-consultancy/([a-zA-Z0-9\-]+)/$ consultancy-02.php?section=$1 [L]
#
RewriteRule ^art-consultancy/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)$ article-01.php [L]
RewriteRule ^art-consultancy/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/$ article-01.php [L]
any help appreciated!
ps. tried Redirect /consultancy /art-consultancy without any luck. Think this method needs an actual file?
best, Dc
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你基本上只需要完全按照你所说的去做,就像你对其他规则所做的那样,所以我不确定这在多大程度上符合“答案”的资格......但是,为了完整起见,我将继续写出完整的内容:(
此外,我将您的其他规则压缩为单行)
如果您希望将
consultancy
转换为在用户浏览器 URL 中添加 art-consultancy
时,您应该将第一个RewriteRule
替换为:我不完全确定为什么
Redirect
不起作用但你期望如此。如果您查看服务器的error_log
,它可能会告诉您,但除此之外,在不知道站点目录结构的情况下很难推测。You basically just have to do exactly what you said you wanted to do, in a similar way that you've done with the other rules, so I'm not sure how much this qualifies in the way of an "answer"...But, for the sake of completeness, I'll go ahead and write up the full thing:
(Also, I condensed your other rules into single lines)
If you wanted
consultancy
to be transformed toart-consultancy
in the user's browser URL, you should replace the firstRewriteRule
with this:I'm not entirely sure why the
Redirect
didn't work like you expected it to though. If you look at your server'serror_log
it might tell you, but otherwise it's hard to speculate without knowing what your site's directory structure looks like.