【问题标题】:How do i redirect a domain while displaying the old address?如何在显示旧地址时重定向域?
【发布时间】:2013-04-25 10:26:56
【问题描述】:

我使用主机服务生成了一个 .htaccess 文件,用于从空子域到文件夹中的新子域页面的 301 永久重定向。

sejur-avion.old-domain.com --> subdomain.new-domain.com/agent/5049/sejur-avion

RewriteEngine on
RewriteCond %{HTTP_HOST} ^sejur\-avion\.old\-domain\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.sejur\-avion\.old\-domain\.com$
RewriteRule ^(.*)$ "http\:\/\/subdomain\.new\-domain\.com\/agent\/5049\/sejur\-avion\/$1" [R=301,L]

我需要做的是从地址栏中隐藏“新域名”名称,并尽可能显示旧域名。

所以我需要subdomain.new-domain.com/agent/5049/sejur-avion 显示为subdomain.old-domain.com/agent/5049/sejur-avion

我听说有一个 ServerAlias 函数可以用于此目的? 请帮忙

【问题讨论】:

    标签: .htaccess redirect http-status-code-301 domain-name


    【解决方案1】:

    您可以使用 mod rewrite 的 P 标志发送请求以通过 mod_proxy 进行反向代理:

    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^sejur\-avion\.old\-domain\.com$ [OR]
    RewriteCond %{HTTP_HOST} ^www\.sejur\-avion\.old\-domain\.com$
    RewriteRule ^(.*)$ "http\:\/\/subdomain\.new\-domain\.com\/agent\/5049\/sejur\-avion\/$1" [P,L]
    

    (基本上将R=301 替换为P

    但是,这需要您加载 mod_proxy,但情况并非总是如此。如果该模块未加载,您不太可能收到错误(只是没有任何反应)。

    【讨论】:

    • 试过了,但是没用。请问我在哪里可以加载 mod_proxy?我正在使用 hostgator。
    猜你喜欢
    • 1970-01-01
    • 2011-06-19
    • 1970-01-01
    • 2013-05-05
    • 2021-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-23
    相关资源
    最近更新 更多