【问题标题】:Redirect to a new domain using apache vhost configuration使用 apache vhost 配置重定向到新域
【发布时间】:2018-05-08 14:39:21
【问题描述】:

我有一个 apache vhost 配置如下。我想要来自

的所有请求

somedomain.com/loadproduct?product=dell-inspiron-15

被重定向到

someotherdomain.com/dell-inspiron-15

我可以从虚拟主机配置中做到这一点吗?请注意,我在 url 中有查询参数。

Listen 12567
NameVirtualHost *:12567

<VirtualHost *:12567>
    ServerName somedomain.com
    ProxyPreserveHost On

    RewriteEngine On
    RewriteRule ??
</VirtualHost>

非常感谢这里的任何线索。

【问题讨论】:

    标签: apache httpd.conf vhosts


    【解决方案1】:

    您可以使用(而不是RewriteRule ??):

    RewriteCond %{QUERY_STRING} (?:^|&)product=([^&]+) [NC]
    RewriteRule ^/?loadproduct$ http://someotherdomain.com/%1? [R=301,L,NC]
    

    【讨论】:

    • 我没有明白“从实际 URL 到漂亮 URL 的外部重定向”和“从漂亮 URL 到实际 URL 的内部转发”是什么意思?
    • 但是为什么需要重写“someotherdomain.com/dell-inspiron-15 to somedomain.com/loadproduct?product=dell-inspiron-15”?
    • 我的 someotherdomain 足以响应它收到的查询。我们可以聊天吗?
    • 很抱歉一次又一次地打扰您。这工作正常,但我不想重定向到所有产品的新 URL。我有一个产品白名单,例如 1. dell-inspiron-15 2. dell-inspiron-16 3. dell-inspiron-17 ... 我想针对这些产品重定向到新 URL,对于我想使用的其他产品当前路径本身。例如: somedomain.com/loadproduct?product=dell-inspiron-15 -> 重定向到 someotherdomain.com/dell-inspiron-15 somedomain.com/loadproduct?product=hp-15-abcd -> 不重定向 我该怎么做有选择地做这个重定向?感谢这里的线索。
    • 记录了另一个问题stackoverflow.com/questions/47547418/… 的要求。请检查您是否有空闲时间。谢谢!
    猜你喜欢
    • 2018-05-12
    • 2018-05-12
    • 2020-04-17
    • 2021-06-16
    • 2016-03-24
    • 1970-01-01
    • 2017-06-23
    • 2015-01-30
    • 2012-05-13
    相关资源
    最近更新 更多