【问题标题】:Apache HTTP RewriteRule for hostname用于主机名的 Apache HTTP RewriteRule
【发布时间】:2021-06-25 21:28:53
【问题描述】:

每个人。

我的问题很简单,但我找不到解决办法。

我需要做的就是在 Apache 上使用 RewriteRule 将所有请求从主机名重定向到其 FQDN。

例如,如果请求是 https://hostname/test.html,我希望 Apache 将请求重定向到 https://hostname.test.com/test.html。这必须重写为对该主机名的任何请求。

我该怎么做?

编辑 1:

我注意到以下 RewriteRule 适用于 HTTP,但不适用于 HTTPS:

RewriteCond %{​​​​​​​HTTP_HOST}​​​​​​​ ^hostname$
RewriteRule ^(.*)$ https://hostname.test.com%{​​​​​​​​REQUEST_URI}​​​​​​​​ [R,L]

我错过了什么?

BR

【问题讨论】:

  • 你能分享一下你到目前为止所尝试的吗?
  • 嗨,@AmitVerma。我尝试将 ServerName 设置为 hostname.test.com 并将 ServerAlias 设置为主机名。然后我尝试了: RewriteEngine On RewriteCond %{HTTP_HOST} hostname [NC] RewriteRule ^(.*)$ hostname.test.com/$1 [R=302]
  • @tomasaazevedo,您显示的代码对我来说看起来不错。您能否确认哪个示例 https URL 不起作用?

标签: apache mod-rewrite httpd.conf httpserver ibmhttpserver


【解决方案1】:

我已经设法找到了问题。

重定向有效。

问题是证书不包含 URL 的主机名版本,只有 FQDN。

由于在重定向之前检查了证书,因此出现了问题。

抱歉弄乱了

【讨论】:

    猜你喜欢
    • 2013-01-24
    • 2020-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-06
    • 2010-09-25
    • 2018-10-06
    相关资源
    最近更新 更多