我有2个网站。称之为 5p_front (http://localhost/5p_front/)(在 OctoberCMS 中开发)和 5p_group (http://localhost/5p_group/)(在 CakePHP的)
在 5p_front 中,我有一个 .htaccess 文件,我在其中发布了一个条件,该条件会在找到后立即重定向到 5p_group 网站在网址中包含 5p_group_login 的单词。这是下面的代码
的.htaccess
RewriteRule ^5p_group_login.*$ http://localhost/5p_group [L,R=301]
因此,如果有人试图以http://localhost/5p_front/5p_group_login为例,他们只会被重定向到http://localhost/5p_group/。
这可以在主页和其他子页面(例如页面http://localhost/5p_front/we-are-5p-group)中正常工作。
但是我有一个产品内页http://localhost/5p_front/product/10如果我将菜单项转移到允许我重定向到登录页面,它会显示此网址http://localhost/5p_front/product/5p_group_login,因此当我点击它时,我我无法在http://localhost/5p_group/重定向,因为它只会重新定向到当前网址http://localhost/5p_front/product/5p_group_login,但情况并非如此。
此外,我的菜单动态发布,我使用Static Pages插件创建了 OctoberCMS 提供的菜单,并创建了“登录”菜单链接,如下所示。
即使用户位于http://localhost/5p_group/,我如何重定向http://localhost/5p_front/product/10的网址,并点击“登录”链接,如果鼠标悬停在该链接上,则会显示http://localhost/5p_front/product/5p_group_login。
有人可以在这里指导我在这种情况下该怎么做。
由于
答案 0 :(得分:1)
你的规则
RewriteRule ^5p_group_login.*$ http://localhost/5p_group [L,R=301]
放置在5p_front/.htaccess
时仅会影响以/5p_front/5p_group_login
开头的URI(因为您的模式中的前导^
),因此/5p_front/product/5p_group_login
将不匹配。
如果您想重写具有5p_group_login
anyhwere的网址,请使用:
RewriteRule 5p_group_login http://localhost/5p_group [L,R=301]