我在专用服务器上建立了一个 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 再做一个吗?
在ports.conf我有
名称虚拟主机 *:80 听 80 <IfModule mod_ssl.c> # 还不支持基于 SSL 名称的虚拟主机,因此不支持 # NameVirtualHost 声明在这里 听着 443 </IfModule>
似乎您的 Apache httpd 配置错误并尝试在 HTTP 端口上提供 HTTPS(查看您的 Drupal 站点的虚拟主机配置),或者您正在使用类似http://example.com:443/的方案来访问您的Drupal 安装,这也不起作用。
HTTP 应该在端口 80 上提供 HTTPS 应该在端口 443 上提供
您的网站应该在:http://www.domain.com https://www.domain.com上运行。
它可能是以下几件事之一:
我认为这总结了问题可能是什么,让我们知道您的解决方案!
+1 使用安全页面模块(如果您还没有)
干杯
我关注医生会帮助你
Apache:将 http 重定向到 https Apache 安全连接 - 强制 HTTPS 连接
假设您有一个名为http://mail.chida.in的 webmail 子域,并且您想将其重定向到 https 安全连接,即https://mail.chida.in。
这将帮助您远程保护用户隐私和敏感信息,例如用户名和密码。
那么如何配置您的 Apache Web 服务器,以防止您的网站在未经加密的情况下被访问?将 http 重定向到 https Apache 配置
首先确保为 HTTPS 连接配置了 Apache,并安装了必要的 SSL 证书。没有非 ssl 访问,即只接受 https 连接
现在打开 httpd.conf 或 .htaccess 文件(不需要 mod_rewrite):
vi httpd.conf
附加以下行:永久重定向/ https://mail.chida.in/对http://mail.chida.in 的任何请求都将转到https://mail.chida.in/
保存并关闭文件。重启阿帕奇:
/etc/init.d/httpd 重启
这是确保普通用户从不使用纯文本 HTTP 协议发送数据的最简单方法。现在,这使得嗅探敏感数据变得更加困难。通过 SSL https 会话强制 webmail 登录
因此,如果您想强制用户通过 https 访问他们的 webmail,请将以下配置添加到 .htaccess 文件中:
RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://% {HTTP_HOST}%{REQUEST_URI}
确保在 httpd.conf(mod_rewrite 支持)中有如下内容:LoadModule rewrite_module modules/mod_rewrite.so