行业推荐
电信运营商
银行/ 基金/ 证券
大型企业
中小企业
电子商务
政府/ 教育/ 医疗
应用推荐
Exchange
移动应用
SSL VPN
企业OA
SSL服务器证书
GeoTrust
  -SSL专业版证书
 Quickssl Premium
  -SSL专业版多域名证书
 Power Server ID
  -SSL企业版证书
 True Business ID
  -SSL企业版通配符证书
 True Business ID Wildcard
  -SSL企业版多域名证书
 True Business ID Multidomain
  -SSL至尊版证书
 True Business ID With EV
  -SSL至尊版多域名证书
 TBID with EV Multidomain
 
Symantec
  -安全网站证书
 Secure Site
  -安全网站专业版证书
 Secure Site Pro
  -安全网站通配符证书
 Secure Site Wildcard
  -扩展确认的安全网站证书
 Secure Site with EV
  -扩展确认的安全网站专业版证书
 Secure Site Pro with EV
 
闪快
  -闪快SSL普及版
 Rapidssl
  -闪快SSL普及版通配符
 Rapidssl Wildcard
 
代码签名证书
 
Symantec
  -微软代码签名产品
  -Java代码签名产品
 
Thawte
  -微软代码签名产品
  -Java代码签名产品
首页 > 技术支持 > 强制用户通过SSL访问网站

强制用户通过SSL访问网站

有时候,为了网站的安全,我们希望用户访问网站某些页面或者整个网站的时候,必须通过HTTPS的方式访问,而不允许HTTP明文方式访问,如何正确的配置网站和编写程序以达到一个理想的效果呢?
有些网站开发人员,采用了只开放了HTTPS-443端口,而关闭HTTP-80端口的方式,这样的话,虽然可以造成用户的确无法用HTTP访问网站了,但如果用户通过HTTP访问网站,譬如直接在地址栏输入网址www.xxx.com,则系统缺省就采用了HTTP方式,这时用户就会看到一个网站无法访问的出错信息,而绝大多数用户都不具备专业的网站知识,他们不会认为是自己输入不正确,而是认为网站出错了。那如何妥善解决来自用户HTTP的访问请求呢?
正确的做法,应该是将用户通过HTTP访问网站的请求,重新定位到HTTPS请求上。首先,要将网站配置成HTTP和HTTPS都可以访问的模式,确保80和443端口全部打开,然后在那些必须通过https访问的页面的头部加入一个判断语句,逻辑如下:
If 用户是通过HTTP访问本页面
Then 用HTTPS方式重新访问本页面
以下用ASP和JSP代码举例:

asp代码:

If Request.ServerVariables("HTTPS")="off"
Then response.redirect "https://www.myssl.cn" & Request.ServerVariables("PATH_INFO") response.end
End If

jsp代码:

String scheme=request.getScheme();
String url=request.getRequestURI();
if(!"HTTPS".equalsIgnoreCase(scheme))
{
response.sendRedirect("https://www.myssl.cn"+url);
return ;
}
对于必须通过HTTPS的页面,只需加入以上语句,即使用户是通过HTTP访问的该页面,系统也会自动将其转变为HTTPS。
新品推荐

 

 

产品资源
快速分类
FAQ-常见问题与解答