我在httpd.conf文件中设置了现有的重写规则。其中一个检查HTTP_HOST是否匹配模式(.*).example.com case-insensitively [NC]。如果请求的URL为“/”,则会在内部重写为浏览器中未显示的另一个URL。我的意思是浏览器只显示/而不显示其他参数,比如下面例子中的storeId=xxxx。
RewriteCond %{HTTP_HOST} (.*)\.example\.com [NC]
RewriteRule ^/?$ anotherURL?storeId=xxxxx [L,PT]
网站上的所有功能URL都以URI中的“/online”开头,例如“https://local.example.com/online/shop/”。然而,有一些链接在URL中不包括“/online”,因此,这些链接无法工作,例如“https://local.example.com/sale/”
现在,我正在尝试为前面提到的同一个URL创建一个额外的重写规则。目的是重写不包含“/online”的链接(或者如果“/online”被手动从工作URL中删除),以便在内部重写它们并使URL以与上述原始规则相同的方式运行。
我已经尝试了许多假设,但所有这些都破坏了网站的内容,并没有给予所需的输出。我期待着当击中这些链接工作的罚款
1条答案
按热度按时间m2xkgtsf1#
要实现所需的结果,您可以添加一个额外的重写规则来处理不包含“/online”的URL。下面的示例说明了如何修改现有的重写规则来实现此目的:
请确保重新启动Web服务器以使更改生效。