问题描述
目前在一台Centos上安装了Apache,并且创建了三个虚拟机,其中一个虚拟机配置了SSL服务。我要的效果是禁用HTTP访问,只允许HTTPS访问。请问该如何配置实现?
目前的情况:HTTP和HTTPS都可以访问。
问题解答
回答1:你是要想http强制跳转到https访问,还是说http直接设置不可访问。一般部署了https的网站考虑到用户习惯http输入,会在服务器配置http强制跳转到https,Apache服务器配置如下:如果需要整站跳转,则在网站的配置文件的<Directory>标签内,键入以下内容:
RewriteEngine onRewriteCond %{SERVER_PORT} !^443$RewriteRule ^(.*)?$ https://%{SERVER_NAME}/$1 [L,R]
如果对某个目录做https强制跳转,则复制以下代码:
RewriteEngine onRewriteBase /yourfolderRewriteCond %{SERVER_PORT} !^443$#RewriteRule ^(.*)?$ https://%{SERVER_NAME}/$1 [L,R]RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]回答2:
删除你配置的http 对应的虚拟主机就好了,https是ssl配置的虚拟主机,所以原先http的配置对他是没有什么影响的