【问题标题】:Apache Providing Content To Non-SSL SiteApache 向非 SSL 站点提供内容
【发布时间】:2018-06-15 23:24:15
【问题描述】:

我的原始站点 - premium-web-directory.com 没有安装 SSL,但问题是不存在的域 https://premium-web-directory.com 正在使用 https://asknoypi.com 的内容。 https://asknoypi.com 是我的主要网站,拥有有效的 SSL 证书。

问题:由于 不存在https://premium-web-directory.com 包含来自 https://asknoypi.com 的内容,Google 将其编入了搜索结果的索引,从而导致内容重复问题。

来自托管服务提供商的消息

当帐户具有 SSL 和专用 IP 时,请求域 没有 SSL VirtualHost 条目的 IP 使用 第一个 SSL VirtualHost 条目 Apache 在其配置文件中用于 相关IP。在这种情况下,Apache 从 "https://asknoypi.com" 请求时的 SSL VirtualHost 条目 "https://premium-web-directory.com" 因为 SSL 虚拟主机 “https://premium-web-directory.com”不存在,并且 "https://asknoypi.com" SSL VirtualHost 条目是第一个 配置***。

我做了什么: 我尝试将不存在的 https://premium-web-directory.com 强制为 http 但 仍然没有运气,因为我没有在网站上安装 ssl 证书。

RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule ^ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

为了解决这个重复的内容问题,我可以采取哪些步骤?我应该怎么做才能防止(https://premium-web-directory.com)使用https://asknoypi.com的内容?

【问题讨论】:

  • 您正在提供 Apache 指令,但您的服务器正在运行 nginx(服务器 nginx/1.12.2)。请首先检查您真正使用的软件。

标签: apache .htaccess ssl https cpanel


【解决方案1】:

您能做的最好的事情是最终为premium-web-directory 安装证书。安装证书后,您有多种选择 - 让您的网站在 https 上工作,重定向到 http 或返回 404 - 所有这些都可以正常工作。

在任何一种情况下,您还需要一个明确的“fake”或“default”主机来捕获对不存在主机的所有请求,以解决这个问题。这是一个related answer 说明如何操作。

使用基于名称的虚拟主机时,第一个虚拟主机 加载的配置将是默认的(来源:Apache Wiki

在这种情况下,浏览器会抱怨错误的证书 - 您对此无能为力,但至少您不会遇到搜索引擎中的内容重复问题

此主机应生成有意义的错误消息或仅返回 404。作为更高级的选项,您可以将其配置为针对不支持 https 的主机重定向到 http://

正如@Eugène Adell 提到的,您的网站似乎正在使用nginx - 无论如何,解决方案是similar - 您需要将其中一台nginx 服务器标记为default

【讨论】:

    猜你喜欢
    • 2014-04-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-11
    • 2011-01-31
    • 1970-01-01
    • 2014-09-09
    • 2012-06-05
    相关资源
    最近更新 更多