配置文件

配置文件

我已经在专用服务器上建立了 Drupal 6 站点,并通过安装在其上的“Matrix”控制面板启用了 SSL。

现在的问题是,该网站仅加载来自 https 的页面。大多数图像也无法加载,我推测这与同一件事有关。理想情况下,我希望 http 和 https 都能正常工作,然后我可以对需要安全的页面进行重定向。

尝试加载常规 http 页面时出现的错误是:

**Bad Request**

Your browser sent a request that this server could not understand.
Reason: You're speaking plain HTTP to an SSL-enabled server port.
Instead use the HTTPS scheme to access this URL, please.

有人能给我指出正确的方向吗?


编辑:

sites-enabled/domainname.co.uk有一个为服务器 IP 设置 <VirtualHost>,使用端口 80,如下所示:

<VirtualHost xx.xx.xx.xx:80>
        ServerName xx.co.uk
        ServerAlias www.xx.co.uk
        ServerAdmin [email protected]
        DocumentRoot /home/default/xx.co.uk/user/htdocs
        ErrorLog /home/default/xx.co.uk/user/logfiles/error_log
        TransferLog /home/default/xx.co.uk/user/logfiles/access_log
        php_admin_value open_basedir /tmp:/home/default/xx.co.uk
        SuexecUserGroup xx matrixdomain
        ScriptAlias /cgi-bin/ /home/default/xx.co.uk/user/htdocs/cgi-bin/
        AddHandler server-parsed .shtml
        AddType text/html .shtml
        <Location />
                Options +Includes
        </Location>
# Begin user directives <--
# --> End user directives

我需要为 443 再做一个吗?

端口配置文件我有

名称虚拟主机 *:80
听 80

<IfModule mod_ssl.c>
    # 基于 SSL 名称的虚拟主机尚不受支持,因此没有
    此处为 # NameVirtualHost 语句
    收听 443
</IfModule>

答案1

似乎你的 Apache httpd 配置错误,并试图在 HTTP 端口上提供 HTTPS 服务(请查看 Drupal 站点的虚拟主机配置),或者你正在使用类似http://example.com:443/访问您的 Drupal 安装,但这样做也不起作用。

答案2

HTTP 应在端口 80 上提供服务 HTTPS 应在端口 443 上提供服务

您的网站应该能够:http://www.domain.com https://www.domain.com

可能是以下几种情况之一:

  • 您需要手动指定端口,例如,如果您访问http://www.domain.com:443/,这通常会失败
  • Web 服务器配置不正确,出于某种原因,在端口 80 上提供 SSL 内容服务。除非您的控制面板中存在错误或其他问题,否则通常不会发生这种情况。您重新启动了 Apache 吗?
  • 在drupal配置中,设置网站URL为“http://www.domain.com:443“。这将始终将您转发到此位置,即使您输入http://www.domain.com在您的浏览器中。
  • 您已安装 Drupal Secure Pages,但配置不正确。如果您已安装,请访问https://www.domain.com/admin/build/securepages进行配置。

我认为这总结了问题可能是什么,请让我们知道您的解决方案!

答案3

+1 使用安全页面模块(如果您还没有使用)

干杯

答案4

我认为遵循文档将帮助你

引用

Apache:将 http 重定向到 https Apache 安全连接 – 强制 HTTPS 连接

假设您有一个名为http://mail.chida.in并且你想将其重定向到 https 安全连接,即https://mail.chida.in

这将帮助您远程保护用户隐私和敏感信息,例如用户名和密码。

那么,如何配置 Apache Web 服务器,以防止未经加密就访问您的网站?将 http 重定向到 https Apache 配置

首先确保 Apache 已配置为 HTTPS 连接,并且安装了必要的 SSL 证书。禁止非 SSL 访问,即仅接受 https 连接

现在打开 httpd.conf 或 .htaccess 文件(不需要 mod_rewrite):

配置文件

附加以下行:重定向永久/https://mail.chida.in/ 任何请求http://mail.chida.in将会去https://mail.chida.in/

保存并关闭文件。重新启动 Apache:

/etc/init.d/httpd 重启

这是确保普通用户永远不会使用纯文本 HTTP 协议发送数据的最简单方法。现在这使得嗅探敏感数据变得更加困难。强制通过 SSL https 会话登录 Webmail

因此,如果您想强制用户通过 https 访问他们的网络邮件,请在 .htaccess 文件中添加以下配置:

RewriteEngine 开启 RewriteCond %{HTTPS} 关闭 RewriteRule (.*)https://%{HTTP_HOST}%{请求URI}

确保 httpd.conf(mod_rewrite 支持)中包含以下内容:LoadModule rewrite_module modules/mod_rewrite.so

引用

相关内容