URL重定向使http访问转到https访问

apache环境下,配置好https后,需要设置url重定向规则,使网站页面的http访问都自动转到https访问,但有一个页面例外。 1、先打开url重定向支持 1)打开Apache/conf/httpd.conf,找到 #LoadModule rewrite_module modules/mod_rewrite.so 去掉#号。 2)找到
apache环境下,配置好https后,需要设置url重定向规则,使网站页面的http访问都自动转到https访问,但有一个页面例外。
 
1、先打开url重定向支持
 
1)打开Apache/conf/httpd.conf,找到 #LoadModule rewrite_module modules/mod_rewrite.so 去掉#号。
 
2)找到你网站目录的<Directory>段,比如我的网站目录是c:/www,找到
 
<Directory "C:/www">
 
...
 
</Directory>
 
修改其中的 AllowOverride None 为 AllowOverride All
 
3)重启apache服务
 
2、设置重定向规则
 
1)在你网站目录下放一个.htaccess文件。windows环境下,不能把文件直接改名为.htaccess,会提示你必须输入文件名。所以我们先新建一个“新建文本文档.txt”文档,记事本打开,选择另存为,保存类型选择“所有文件(*.*)”,文件名输入“.htaccess”,保存。这样便生成了一个.htaccess文件。
 
2)编辑器打开.htaccess文件,写入如下规则:
 
 
RewriteEngine on    
RewriteCond %{SERVER_PORT} !^443$  
RewriteCond %{REQUEST_URI} !^/tz.php  
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R]  
 
简单解释下:
%{SERVER_PORT} —— 访问端口
 
%{REQUEST_URI} —— 比如如果url是 http://localhost/tz.PHP,则是指 /tz.php
 
%{SERVER_NAME} —— 比如如果url是 http://localhost/tz.php,则是指 localhost
 
以上规则的意思是,如果访问的url的端口不是443,且访问页面不是tz.php,则应用RewriteRule这条规则。
 
 
这样便实现了:访问了 http://localhost/index.php 或者 http://localhost/admin/index.php 等页面的时候会自动跳转到 https://localhost/index.php 或者 https://localhost/admin/index.php,但是访问 http://localhost/tz.php 的时候就不会做任何跳转,也就是说 http://localhost/tz.php 和 https://localhost/tz.php 两个地址都可以访问。
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

一:确定你的系统是UTF编码 [root@Tserver ~]# env|grep LANG LANG=en_US.UTF-8 二:NGINX配置文件里默认编码设置为utf-8 server { listen 80; server_name .inginx.com ; index index.html index.htm index.php; root /usr/local/nginx/html/inginx.com; ch
在网站建设中需要网页重定向的情况很多:如网页目录结构变动,网页重命名、网页的扩展名改变、网站域名改变等。如果不做重定向,用户的收藏和搜索引 擎数据库中的旧地址只能让访客得到一个404错误信息页面,访问流量白白丧失。不仅如此,之前该页面的一切积
安装PDF转换和文档在线预览插件后,管理员可以设置只允许用户下载文档的PDF版本,而无法下载原始文档;或者管理员可以设置用户只能通过浏览器在线预览文档内容,无法下载文档,或者复制/粘贴文档内容。 您从网站下载的DocCare试用版软件不包括该插件。 如果
window10 64系统在安装IIS URL重写模块2伪静态组件提示需要IIS7.0以上版本。 解决方法: 打开注册表 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp 双击右边MajorVersion,默认的数值是a,修改成9,然后再安装 ,安装完成后,再把数值修改为a即可。
默认情况一个服务器的 IIS 只能绑定一个HTTPS也就是443端口 要实现多个站点对应HTTPS只能更改IIS配置 首先把每个站点分配个不同端口,如443.444.445(证书一定要是多域的) 然后重启站点 方法一: 然后在: C:\Windows\system32\inetsrv\config\applicationH
1. 下载最新版本的Perl,安装后重启系统。 http://downloads.activestate.com/ActivePerl/ 2.下载 latest openssl并解压到C:\openssl-0.9.8k。 http://www.openssl.org/source/ 参考openssl目录下的install.win32说明进行安装: 1、进入解压目录。 cd C:\op